我有一个要求,就是在输入文本框中,在输入的每个值上都必须进行验证,并且在输入第6个字符后,必须将连字符附加到字符串中。
我尝试过的解决方案和遇到的问题如下:
keyup - 它完美地用于检测输入的每个字符并附加一个连字符,除了"它只会发送一个键输入长按键"。例如:如果我保留' 9'按下很长一段时间后,文本框中的值将为“999999999999'但是keyup事件只触发一次。
keypress - 它完美地用于检测输入的每个字符并附加连字符,除了"按键事件未在退格键上调用"。例如:如果我输入退格键,我有一个功能可以再次验证该字段并删除连字符。
keydown - 我没有得到每个键的确切当前值。例如:如果我输入' 9'在现场,在keydown活动中,我只得到''作为当前值。我输入' 99',我得到' 9'作为字段值。由于在keydown事件上,该值不会在字段中更新。
输入 - 一切正常,但我无法在此函数中获取键码。 (没有它我无法检测到退格)。
那么,为了
应该做些什么同时工作。
在过去的几个小时里,我一直在探索很多事情。可能这是一件简单的事情,但我无法得到答案。非常感谢您的帮助。提前谢谢。
答案 0 :(得分:0)
我有同样的问题并修复它添加这两个功能:
$('#YourId').keydown(function () {
yourFunction();
}).keyup(function () {
yourFunction();
});
答案 1 :(得分:0)