当字段焦点丢失时停止jQuery自动完成

时间:2012-03-22 15:17:46

标签: jquery autocomplete

我有一个输入字段,它使用自动完成功能显示用户输入的文本的可能匹配列表,在该字段下是另一个输入字段。当用户键入文本然后单击其下的下一个字段时,“自动完成”下拉菜单将覆盖该输入字段。

如果字段仍然具有焦点,我只想显示自动完成下拉列表,并且当焦点丢失时中止自动完成操作。

我的代码是这样的。

var inputID = "#"+model+field;
$(inputID).autocomplete({
    source: autoURL,
    delay: 0,
    minLength: 1
});

模型和字段被定义为函数参数。

我以为我可以附加一个事件来捕捉失去焦点,然后调用类似$(inputID).abort()的内容来取消自动完成功能。或者我可以将焦点事件处理程序添加到它下面的字段以触发中止。我没有尝试过任何工作,我已经查看了自动完成的代码,但看不到阻止它的方法。

我正在运行jQuery 1.7.1和jQuery UI 1.8.18

任何帮助都会很棒。

由于

1 个答案:

答案 0 :(得分:1)

根据the documentation,您可以致电$(inputID).autocomplete('close');关闭自动填充功能。