移动端input number输入非数字取到的值为空

移动端想限制框只能输入正数以及正浮点数,用pattern调用数字键盘,ios没有小数点,安卓机上可以输入负数。

用正则判断input的值,当input输入非数字时,js取到的值为空。

请问各位大神是否有解决办法!

阅读 4.1k
3 个回答

/^d+(.d+)?$/g 这个没有忽略用户输入的空格
方案一
利用节流 当用户输入停止的多少毫秒后去匹配正则 过滤输入内容以及提示
方案二
提交的时候过滤用户输入并提示

可能有更好的方案 这我暂时想到的

value.replace(/1/g, '')


  1. d

好一点儿体验呢是用户输入非数字和非点号负号时自动纠正,这种可以通过onkeydown或者onchange事件去干。

提交的时候统计校验的话呢,直接把input里的值弄出来,trim在正则匹配

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题