charCodeAt()方法,结果》255就不是ASCII

解决方案 »

  1.   

    只能是汉字:<input onkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')">
      

  2.   

    /****************************************************************
     *    chinese captions only (<input onkeypress="chineseOnly()" onpaste="return false">)
     ****************************************************************/
    function chineseOnly()
    {
      if (event.keyCode < 0x4e00 || event.keyCode > 0x9fa5)
        event.keyCode = 0;
    }
      

  3.   

    //str 是传入的变量var valueLen = 0;
            for (i = 0; i < str.length; i ++)
            {
                var code = escape(str.charAt(i));
                if ((code.length >= 4) && (code < '%uFF60' || code > '%uFF9F'))
                {
                    valueLen += 2;
                    //这里表示是全角字符
                }
                else
                {
                    valueLen ++;
                    //这里是半角
                }
    //我写这个是用来判断字符长度的。
            }
      

  4.   

    function strlength(str)
    {
    var l=str.length;
    var n=l
    for (var i=0;i<l;i++)
    {
    if (str.charCodeAt(i)<0||str.charCodeAt(i)>255) n++  //全角字符 
    }
    return n
    }