按下回车键后阻止自动完成建议列表

Prevent Autocomplete suggest list after entery key is press

本文关键字:列表 回车      更新时间:2023-09-26

我已经在knockout中实现了jquery自动完成插件,它的功能运行良好。

有一个需求标签和关键字搜索。当来自autosuggest的数据是标签搜索,而手动键入的是关键字搜索时,它将在按下回车键后执行搜索。

当我键入一些关键字并按下回车键时,问题来了——文本输入值应该形成为taggedit样式的控件,并且自动建议在一段延迟后加载,在这种情况下不应该加载。当我从建议列表中选择数据时,点击回车键工作正常。

如果加载延迟,如何在键入并按下回车键后防止自动建议列表

编辑:

$(function() {
    var availableTags = [
            "item1","item2","item3"
        ];
    $("#search").autocomplete({
        source:availableTags,
        minLength: 0
    }).keyup(function (e) {
        if(e.which === 13) {
            $(".ui-menu-item").hide();
        }            
    });
});​

我使用了以下代码使其工作。但正在寻找更好的解决方案。

      keyup(function (e) {
      if(e.which === 13) {
                   $("#txtSearchAuto").autocomplete({
                        disabled: true
                    });                       
                }

并在css 中添加了样式

.ui自动完成已禁用{display:none!important}

并最终启用文本框按键事件中的自动完成

          if (event.keyCode !== 13){
           if (self.SearchInput().length >=2)
            $("#txtSearchAuto").autocomplete({
                disabled: false
            });
           }