网页中如何实现文本框只能输入数字?
提供以下二种方法可以实现。
方法一、四事件组合完合可以实现文本框只能输入数字input type=textonkeypress = 'return /^\d$/。test(String。fromCharCode(event。 keyCode))'oninput= 'this。value = this。value。replace(/\D+/g, )'onpropertychange='if(!/\D+/。test(this。 value)){return;};this。value=this。value。replace(/\D+/g, )'onblur = 'this。value = th...全部
提供以下二种方法可以实现。
方法一、四事件组合完合可以实现文本框只能输入数字input type=textonkeypress = 'return /^\d$/。test(String。fromCharCode(event。
keyCode))'oninput= 'this。value = this。value。replace(/\D+/g, )'onpropertychange='if(!/\D+/。test(this。
value)){return;};this。value=this。value。replace(/\D+/g, )'onblur = 'this。value = this。value。replace(/\D+/g, )'/
方法二、jquery法实现文本框只能输入数字控制文本框只能输入数字是一个很常见的需求,比如电话号码的输入、数量的输入等,这时候就需要我们控制文本框只能输入数字。
在用js控制之后在英文输入法的状态下去敲击键盘上的非数字键是输不进去的,然而当你转到中文输入法的时候输入的是中文,再按空格或回车键,中文或英文字母就输进去了,这时候就需要我们在文本框得到焦点的时候把输入法关闭,就是不响应输入法的切换。
如下语句可以实现这样的功能。下面的语句是用jquery写的,控制class为checkNum的文本框只能输入数字和小数点。Js代码 收藏代码//监听键盘,只允许输入数字和小数点 $(。
checkNum)。keypress(function(event) { var keyCode = event。which; if (keyCode == 46 || (keyCode = 48 keyCode =57)) return true; else return false; })。
focus(function() { this。style。
imeMode='disabled'; }); imeMode有四种形式,分别是:active 代表输入法为中文inactive 代表输入法为英文auto 代表打开输入法 (默认)disable 代表关闭输入法以上二种方法都可以实现文本框只能输入数字,但第一种是最简单最有效的方法,希望对你有所帮助。收起