[当我在softKeyboard上检查。 - Â的keyCode时,JavaScript中的e.key
为“未识别”,所有这些字符的e.keyCode
为229。] >
我正在使用的设备是TC52k扫描仪,并且扫描触发器具有相同的key和keyCode ...,因此无法完全禁用它。
我不知道我尝试了多少方法都没有用...但是我会发布一些...
这是使用JSON对象与rivets.js绑定的动态字段
$(document).on("keydown", ".qty-input", function(e) { let code = e.keyCode; if (code == 229 && $(this).val().charAt(str.length - 1) == ".") { $(this).val($(this).val().slice(0, -1)); } });
^基本上,这表示如果最后一个字符的代码为229,而输入字符串的最后一个字符为'。',则将最后一个字符剪掉...但是不能正常工作。
我也这样做,基本上是说只接受键号在48到57之间的键,这是android软键盘上的键1-9。
<input class="qty-input" placeholder="0" type="number" min="0" step="1" onkeypress="return event.charCode >= 48 && event.charCode <= 57 && event.keyCode != 229" pattern="[0-9]*" autofocus>
也没有工作...
有人有经验并可以提供帮助吗?我知道网上有很多未解决的帖子。这是我要做的最后一件事,它可以防止我的应用程序被部署!
也...我已经使用事件尝试了这些功能:按键,按键按下,更改,输入和按键...
[当我在..的softKeyboard上检查keyCodes时,JavaScript中的e.key为“ Unidentified”,所有这些字符的e.keyCode为229。我使用的设备是TC52k扫描仪...
[这是我发现的最佳解决方法(由于229还触发了'scanner'触发器,因此我必须检测字符串是否包含条形码和数量,并且必须将两者分开([.]
的keyCode再次与扫描仪触发器的keyCode相同))这2个条件决定2件事: