0

我正在使用 JQuery UI 自动完成功能,但遇到了问题。

这是我的代码:

   $("#Id").autocomplete({
      source: url,
          change : function (event,ui){
    alert('changed');       
    }
});

我希望用户在输入文本中输入任何内容时都会触发更改事件

这里不是这样。

当我输入一些东西时,它不会触发,直到我用鼠标按下屏幕上的其他地方。

如何处理这种情况?

4

2 回答 2

0

尝试直接将按键事件绑定到它?

   $("#Id").autocomplete({
      source: url,
          change : function (event,ui){
    alert('changed');       
    }
});    

$("#Id").bind('keypress',function(){$(this).autocomplete.change});
于 2012-09-04T15:21:32.827 回答
0

我通过单独使用按键事件来解决我的问题。而不是使用更改事件。

新代码:

$("#Id").autocomplete({
  source: url
});    

$("#Id").keydown(function() {
    // Logic goes here
});

出现这个问题是因为我们失去了焦点,两个事件被触发了 onBlur 和我拥有的某个按钮的 onclick 事件。这会导致行为不一致。

谢谢

于 2012-09-05T07:42:54.547 回答