首先,input有一个自己的属性,可以设置type为number如
<input type="number"></input>
这种方法只能用于电脑页面,手机输入还是可以输入汉字。
其次就是用js来实现。
首先是正则表达式形式
<input onkeyup="value=value.replace(/[^\d]/g,'') "onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))">
这种方法写出来的input框可以输入字母汉字但是会自动删除。
最后是根据按键编码来实现的,同样这种方法只能用在键盘上。
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; } } }
然后再用input调用
<input onkeydown="onlyNum()"/>
这种方法是根据键盘上每个按键都有自己的keyCode来实现的。