jQuery.autocomplete是粘性的

jQuery.autocomplete是粘性的,jquery,jquery-ui,autocomplete,widget,Jquery,Jquery Ui,Autocomplete,Widget,我遇到一个问题,当我使用tab更改文本框时,下拉菜单被卡在向下位置。如何解决这类问题?我已经有了这样的东西: $("input#lastname").autocomplete({ source: "autocomplete.lastname.php" }); 这并不是我想要的,但也许可以修改一下?我还注意到,on.hide在回车时,菜单底部的剩余部分仍然显示 提前谢谢 它之所以滞后,是因为您的源代码是一个PHP文件,必须加载和处理其中的内

我遇到一个问题,当我使用tab更改文本框时,下拉菜单被卡在向下位置。如何解决这类问题?我已经有了这样的东西:

        $("input#lastname").autocomplete({
            source: "autocomplete.lastname.php"
        });
这并不是我想要的,但也许可以修改一下?我还注意到,on.hide在回车时,菜单底部的剩余部分仍然显示


提前谢谢

它之所以滞后,是因为您的
源代码是一个PHP文件,必须加载和处理其中的内容


一个快速而肮脏的解决方案是加载AJAX调用

    $("input#firstname").autocomplete({
      source: "autocomplete.firstname.php"
    }).keyup(function(e) {
      if (e.which === 13) {
        $(".ui-menu-item").hide();
      }
    });

它之所以滞后,是因为您的
源代码
是一个PHP文件,必须加载和处理其中的内容


一个快速而肮脏的解决方案是加载AJAX调用

    $("input#firstname").autocomplete({
      source: "autocomplete.firstname.php"
    }).keyup(function(e) {
      if (e.which === 13) {
        $(".ui-menu-item").hide();
      }
    });

我也有同样的问题,但对我来说,在AJAX调用上加钉似乎太过分了。因此,我添加了一行,当用户聚焦到下一个输入框时,关闭表单上的所有自动完成:

$(function() {
    var lastnames;

    $.get("autocomplete.lastname.php", function(data) {
       lastnames = data;
    });


    $("input#lastname").autocomplete({
        source: lastnames
    });
});​

这样做的好处是,在需要时不会干扰自动完成功能,但可以为那些可以快速浏览表单的用户快速隐藏它。

我也遇到过同样的问题,但在我看来,添加AJAX调用似乎有些过火。因此,我添加了一行,当用户聚焦到下一个输入框时,关闭表单上的所有自动完成:

$(function() {
    var lastnames;

    $.get("autocomplete.lastname.php", function(data) {
       lastnames = data;
    });


    $("input#lastname").autocomplete({
        source: lastnames
    });
});​

这样做的好处是在需要时不会干扰自动完成功能,但可以为那些可以快速浏览表单的用户快速隐藏它。

我该怎么办?你有什么可以推荐的改变吗?我该怎么做?你有什么可以推荐的改变吗?