【发布时间】:2018-05-05 14:10:20
【问题描述】:
我用这些设置在输入字段上设置了autoNumeric
[
{"digitGroupSeparator" : ""},
{"decimalCharacter" : ","},
{"modifyValueOnWheel" : false},
{"minimumValue" : "0"}
]
小数点分隔符是逗号。在常规键盘上按下逗号时,它会按原样出现在输入字段中。但是,在数字键盘上按下时,什么也没有出现。这仅在 IE 上发生,在 Chrome/FF 上它可以正常工作,出现逗号。
我在这个服务上测试了 IE 和 Chrome 的 JavaScript 代码:http://unixpapa.com/js/testkey.html
它们是相同的。普通键盘逗号按:
keydown keyCode=188 which=188 charCode=0
keypress keyCode=44 (,) which=44 (,) charCode=44 (,)
keyup keyCode=188 which=188 charCode=0
数字键盘逗号按下:
keydown keyCode=110 (n) which=110 (n) charCode=0
keypress keyCode=44 (,) which=44 (,) charCode=44 (,)
keyup keyCode=110 (n) which=110 (n) charCode=0
这应该作为一个错误提交给 autoNumeric 吗?它也应该接受来自数字键盘的分隔符。有什么可能的解决方法吗?
编辑:这是一个要测试的 JSFiddle:https://jsfiddle.net/g1wumdt7/3/
【问题讨论】:
-
提供 sn-p 或 fiddle 总是有助于检查与问题相关的任何问题。
-
已添加 JSFiddle。
-
您的数字键盘有逗号分隔符吗?小提琴似乎在 chrome 上运行良好。您没有错误地将 digitGroupSeparator 与 decimalCharacter 交换是吗?如果脚本有 IE 的错误,您可能可以使用默认的点分隔符作为 decimalCharacter,然后在您想使用它时用逗号替换它
-
是的,数字键盘底行的零旁边有一个逗号。在普通文本输入上按下它也会在 IE 上输出
,。它仍然在应该允许,的 autoNumeric 输入上输出任何内容
标签: javascript jquery