jquery.autocomplete在选项卡上恢复为无效的先前建议

时间:2010-08-21 19:31:11

标签: javascript jquery jquery-autocomplete

我正在使用jQuery Autocomplete,用户看到以下行为:

  1. 用户开始输入字符串并显示建议
  2. 用户不断输入,直到没有任何建议有效(并且下拉消失)
  3. 用户点击标签
  4. 自动填充功能会使用无效的先前建议填写该字段,清除用户键入的内容
  5. 有什么想法吗?

    这是Javascript代码(来自Django模板):

    $("#id_name").autocomplete("{% url name_autocomplete %}", {
         formatItem: function(data, i, n, value) {
             values = value.split(",,");
             return values[0];
         },
         formatResult: function(data, value) {
             return value.split(",,")[1];
         },
         highlight: false
    });
    

1 个答案:

答案 0 :(得分:1)

您确定所描述的行为完全用户正在做什么吗?我只是问,因为看起来如果你输入一个自动填充的术语,向下滚动到一个选项,键入足以创建一个无效的术语,并快速按Tab键然后突出显示 建议已“提交”。当您的行为中添加“步骤1.5”时,似乎存在竞争条件:“用户按下向下箭头以突出显示建议。”

如果行为确实如您所描述的那样,您可以考虑在jQuery UI中使用自动完成。您似乎已弃用了已链接到的自动填充版本。我对jQuery UI自动完成的几个不同实现进行了快速测试,但它们似乎没有显示您描述的行为。

或者,您在https://github.com/agarzola/jQueryAutocompletePlugin链接的版本似乎有更新。错误报告和修复似乎没有很好的文档记录,但也许他们在更新中(直接或间接)修复了您的问题。