[英]HTML5 input type=number should allow only unsigned integer
How to prevent other number related characters other than unsigned integer 如何防止无符号整数以外的其他与数字相关的字符
For example -
e
.
例如-
e
.
..etc ..等等
Demo: http://codepen.io/anon/pen/jrEGrK 演示: http : //codepen.io/anon/pen/jrEGrK
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet"/> <form action="#" class="container"> <br /> <br /> <br /> <input class="form-control" onkeyup="value=isNaN(parseFloat(value))?1000:value" type="number" value="0"> </form>
如果您对HTML5没问题,为什么不使用pattern属性并定义仅数字的正则表达式?
<input pattern="[1-9][0-9]*" ...>
function validate(e) { var ev = e || window.event; var key = ev.keyCode || ev.which; key = String.fromCharCode( key ); var regex = /[0-9]/; if( !regex.test(key) ) { ev.returnValue = false; if(ev.preventDefault) ev.preventDefault(); } }
<input type='text' onkeypress='validate(event)' />
从实现中获取线索,如果使用这样的正则表达式怎么办:
onkeyup="value=/^\d+$/.test(value)?value:1000"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.