0
我有以下问题:jQuery keydown事件:值延迟
我在输入字段上得到了事件侦听器。在每个keydown事件中,输入字段的值应该被验证。问题是分配给事件对象的值被延迟:
你有一个空的输入框,然后输入下一个字母:
$('form.registration').keydown(function(e) { var $el = $(e.target); if ($el.val() == "") { $el.closest("div.control-group").addClass("error"); } console.log($el.val()); // this logs "" });
你的第二个字母输入
$('form.registration').keydown(function(e) { var $el = $(e.target); if ($el.val() == "") { $el.closest("div.control-group").addClass("error"); } console.log($el.val()); // this logs the first letter (for example: "a") });
正如您所看到的值始终延迟一个字母。
我该如何解决这个问题?
根据haynar的回答使用键控。并考虑使用模糊,或者改为使用模糊,因为用户可以在不使用键盘的情况下更改该值。 – nnnnnn 2012-07-12 07:49:48