如果输入不是有效数字,则使用<input type=number>将导致this.value事件侦听器内部返回空字符串。你可以在http://jsfiddle.net/fSy53/看到一个例子
但是,无效字符仍然显示在输入中。
有没有办法从事件侦听器中获取实际显示的值,包括无效字符?
我的最终目标是防止用户在字段中实际输入任何非数字字符。我需要使用,type=number以便移动设备使用数字虚拟键盘。我的目标是做这样的事情this.value = this.value.replace(/[^0-9.]/g, "")上keyup keypress,但这并不因为如果无效字符键入工作,从阅读this.value的回报""。