input输入框限制仅能输入数字且规定数字长度(使用与输入手机号)
Posted hello八戒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了input输入框限制仅能输入数字且规定数字长度(使用与输入手机号)相关的知识,希望对你有一定的参考价值。
现在越来越多的账户名使用手机号来登录,为了减少前后端的交互,需要用户在输入时就要进行格式的判断,
目前的常规办法是,在输入完成后进行判断。
下面的方法是在输入时就规定只能输入数字,其他格式的字符是无法输入进去的:
<input onkeydown="onlyNum();" style="ime-mode:Disabled" maxlength="11"> //ime-mode:Disabled:作用是完全禁用IME。对于有焦点的控件(如输入框),用户不可以激活IME; //ime-mode的其他属性值及作用如下: //auto : 默认值。不影响IME的状态。与不指定 ime-mode 属性时相同 //active : 指定所有使用IME输入的字符。即激活本地语言输入法。用户仍可以撤销激活IME //inactive : 指定所有不使用IME输入的字符。即激活非本地语言。用户仍可以撤销激活IME //maxlength:该属性规定该input框中,输入内容的长度; <script language=javascript> function onlyNum(){ if(!(event.keyCode==46)&&!(event.keyCode==8)&&!(event.keyCode==37)&&!(event.keyCode==39)) if(!((event.keyCode>=48&&event.keyCode<=57)||(event.keyCode>=96&&event.keyCode<=105))) event.returnValue=false; //执行至该语句时,阻止输入;可类比阻止冒泡原理或者禁止右键功能; } </script>
该方法还存在一些问题,无法阻止第三方输入的任何字符,如果有其他更加完善的解决办法,请留言,我也学习学习。
以上是关于input输入框限制仅能输入数字且规定数字长度(使用与输入手机号)的主要内容,如果未能解决你的问题,请参考以下文章