    function taLimit(taObj, e, iTotal) 
    {
        if (ignoreKey(e) == false)
        {
            if (taObj.value.length==iTotal) return false;
        }
    }

    function taCount(taObj, e, visCnt, iTotal) 
    {
        if (ignoreKey(e) == false)
        {
            if (taObj.value.length > iTotal) 
            { 
                taObj.value = taObj.value.substring(0,iTotal); 
            }
        }
        if (visCnt) 
        { 
            visCnt.innerHTML = iTotal - taObj.value.length; 
        }
    }
    
    function displayunicode(e)
    {
        var unicode = e.keyCode? e.keyCode : e.charCode;
        return unicode;
    }
    
    function ignoreKey(e)
    {
        var ignore = false;
        if (displayunicode(e) == 8)
        {
            ignore = true;
        }
        else if (displayunicode(e) == 16)
        {
            ignore = true;
        }
        else if (displayunicode(e) == 37)
        {
            ignore = true;
        }
        else if (displayunicode(e) == 17)
        {
            ignore = true;
        }
        else if (displayunicode(e) == 46)
        {
            ignore = true;
        }
        return ignore;
    }