我遇到了这个功能的问题。我无法正常开火。它确实有效,但是当我突出显示表格中的数量并更改值(该值最初设置为1)时,我的库存水平为20,当我输入21时,除非我按下另一个键,否则它不会显示该消息。我究竟做错了什么?我已经尝试了所有可能的事件,并且无法弄清楚我做错了什么。顺便说一句,这是在jQuery UI对话框中。
$('#qty').live('keypress', function() {
$('#response').hide();
if($('#qty').val() > stockLevel) {
var response = 'You selected more than we have in stock, we have reset your quantity to the maximum number available in stock';
$('#qty').val(stockLevel);
$('#response').html(response).show('blind', {}, '200');
return false;
}
});
谢谢你的帮助。
答案 0 :(得分:1)
keypress事件具有众所周知的不一致行为(因为它没有在任何标准中定义)。在您的情况下,您的事件在浏览器将文本放入文本框之前触发。请改用keyup事件。