解决方案 »

  1.   

    检测到时候if(不是中文)
        txt=txt+输入;
    else
       return;
      

  2.   


    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
    <title></title>
    </head>
    <body>
    <script language="javascript">
    function replaceZh(obj)
    {
    var str=obj.value;
    var i=0;
    while(i<str.length)
    {
    if(str.charCodeAt(i)>127)//根据字符编码
    {
    str=str.replace(str[i],"");
    i=0;
    }
    else
    {
    ++i;
    }
    }
    obj.value=str;
    }
    </script>
    <input name='plateNum' type="text" id="inputPlateNum" oninput="replaceZh(this)"/>
    <noscript>
    浏览器不支持或者未开启javascript!
    </noscript>
    </body>
    </html>你可以试一试上面的代码,我用coolpad手机自带的浏览器试了一下,在英文字符中间输入中文字符时可以屏蔽掉,只不过光标会向后多移动一个位置,效果还行吧!
    不知道你在手机上用的是啥浏览器,不同的浏览器对javascript的支持情况也是不一样的,你可以从这方面考虑考虑!
      

  3.   

    参考: js限制只能输入英文字母和数字,不能输入中文和其他特殊字符的办法
    绑定onkeyup事件,而不是oninput<html xmlns="http://www.phpernote.com/javascript-function/742.html">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>js限制只能输入英文字母和数字,不能输入中文和其他特殊字符的办法</title>
    </head><body>
    <input type="text" name="username" onkeyup="value=value.replace(/[^\w\.\/]/ig,'')" />
    <p>以上文本框中仅允许输入英文字母,小数点,数字,禁止输入中文字符以及其他特殊字符!</p>
    </body>
    </html>
      

  4.   

    只允许输入字母,就是把正则改成/[^A-z]/ig就可以了。输入除字母以外的字符的时候,会自动删除,光标移至删除后字符的位置,也就是上一次输入字母的位置。点击下面的演示代码自己看看
    演示代码
      

  5.   

    手机上不知道咋样,但是PC上用CSS是可以屏蔽中文的,<input type=text style='ime-mode: disabled; '> 就可以啦