使用_renderItem类中断自动完成字段

时间:2011-02-23 04:20:59

标签: jquery autocomplete

我有一个jQuery自动完成字段,到目前为止一直很好用。我决定使用_renderItem因为我想在结果中使用一些HTML。这是我的代码:

function prepareClientField() {

  var renderItemFunction = function(ul, item) {
    return $("<li></li>")
      .data("item.autocomplete", item)
      .append(item.label)
      .appendTo(ul);
  };

  $("#client_name").autocomplete({
    source: clientNames,
    delay: 0
  }).data("autocomplete")._renderItem = renderItemFunction;

  $("#client_name").focus();
}

有理由,现在,我无法在自动填充字段中使用向上/向下箭头。我甚至无法使用鼠标单击结果中的项目。还有什么我需要做才能让它真正起作用吗?

1 个答案:

答案 0 :(得分:5)

autocomplete插件在很大程度上依赖于内部使用menu元素的a插件。因此,从每个项目中删除a元素会破坏menu插件。

您可以手动启动menu插件&amp;尝试使其工作,或者您需要找到另一个解决方案,其中项目具有a标记,但不要弄乱您的样式。