input[type="number"]时,如何获取12.这种情况的值?

http://jsbin.com/yehusaposu/e...

  • 第一 由于我需要在移动端使用数字键盘,所以必须使用input[type="number"]

  • 第二 由于微信不支持keyup, keydown, keyup事件对象中的keycode思路无解

我需要每次input事件发生时,将input中的字符串获取到,然后push进数组,再讲数组中的
字符串跟正则进行校对,校对不通过则将数组末尾pop掉,然后将Input中的输入字符去掉,但是由于12.这种情况下我获取的是个12,也就无法知道用户在什么时候输入了小数点,和几个小数点,没法跟正则校对,请问大家有什么解决办法?

阅读 6.9k
2 个回答

我想你知道你的需求是校对什么?是让还是不让输入小数点?

第一:通过js设置input的 pattern 属性为"[0-9]*",不需要type=number,这样就可以是数字键盘,也可以正常监听输入的任何值
第二:自己模拟一个数字键盘,不用系统键盘

你确定微信不支持keyup, keydown, keyup?我用过没发现你说的这个问题

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