扫码关注官方订阅号
1、我有一个input框,我要在输入的时候实时验证其只能输入整数(包括负整数),不合格的不让他输进去
input
2、问题主要出在当我要输入-(符号)时,用isNaN函数判断就验证不通过了,我改怎么处理才好?
-
isNaN
认证高级PHP讲师
正则呀/^-?\d*$/
/^-?\d*$/
用正则吧
console.log(/^(-?\d+)$/.test('123')); // true console.log(/^(-?\d+)$/.test('-123')); // true console.log(/^(-?\d+)$/.test('-123.0')); // false
不要在输入时限制用户,因为数字输入并非每个时间断面都是合法的
你可以提示用户,等合适时机如失焦,提交时再验证
参考 HTML5 新属性,当只输入一个 - 时仍然标红,变为负数时改变为正确,如果页面是 HTML5,直接用 <input type="number"/> 吧
HTML5
<input type="number"/>
最好不要实时验证
如果一定要实时验证,那么就用-把输入的式子拆开就好了嘛
试试这个吧。。http://numeraljs.com/
这个问题可以交给一些 library 来处理。。
监听输入框的失焦blur事件,然后用正则判断,这样比较好
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
正则呀
/^-?\d*$/用正则吧
不要在输入时限制用户,因为数字输入并非每个时间断面都是合法的
你可以提示用户,等合适时机如失焦,提交时再验证
参考
HTML5新属性,当只输入一个-时仍然标红,变为负数时改变为正确,如果页面是HTML5,直接用<input type="number"/>吧最好不要实时验证
如果一定要实时验证,那么就用
-把输入的式子拆开就好了嘛试试这个吧。。
http://numeraljs.com/
这个问题可以交给一些 library 来处理。。
监听输入框的失焦blur事件,然后用正则判断,这样比较好