您可以使用HTML5输入类型数字来限制仅数字输入:
<input type="number" name="someid" />
这仅在HTML5投诉浏览器中有效。确保您的html文档的doctype为:
<!DOCTYPE html>
它允许您对文本使用 类型的输入过滤器<input>
,包括各种数字过滤器。这将正确处理“复制+粘贴”,“拖动+拖放”,键盘快捷键,上下文菜单操作,不可键入的键以及所有键盘布局。
一般而言,您可以进行JS验证,如下所示:
function isNumberKey(evt){
var charCode = (evt.which) ? evt.which : evt.keyCode
if (charCode > 31 && (charCode < 48 || charCode > 57))
return false;
return true;
}
<input name="someid" type="number" onkeypress="return isNumberKey(event)"/>
如果要允许小数,则将“ if条件”替换为:
if (charCode > 31 && (charCode != 46 &&(charCode < 48 || charCode > 57)))