在捕获keyup envent的脚本中,我得到输入feild的错误值。
$("#country-name").keyup(function () {
if ($(this).val().length > 1 ) {
console.log($(this).val());
}
});
在输入文本中如果我输入 b r 然后我选择这两个字母并快速输入 g r 我有一个日志br
,但有2个日志gr
如何避免$(this).val()
更新太快?
由于
答案 0 :(得分:2)
最简单的方法是引入延迟来解释打字的人。
var t;
$("#country-name").keyup(function() {
var value = $(this).val();
clearTimeout(t);
t = setTimeout(function() {
if (value.length > 1 ) {
console.log(value);
}
}, 500);
});
答案 1 :(得分:0)
将其保存在类似的局部变量中:
$("#country-name").keyup(function () {
var value = $(this).val();
if (value.length > 1 ) {
console.log(value);
}
});