回答

20

有针对此问题的方法:

var autoc = { 
    delay: 500, 
    minLength: 2, 
    source: path, 
    ..... 
}; 

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

$(".someClassWithMultipleItemsOnDOM").each(function (i) { 
    $(this).autocomplete(autoc).data("autocomplete")._renderItem = renderItem; 
} 
+0

什么是 'autoc'?没有办法可行 – fmpdmb

+2

这是[JavaScript Object Literal](http://www.dyn-web.com/tutorials/obj_lit.php)。显然你必须摆脱这个例子的'....'和最后一个逗号才能工作。 – tomc

+1

@tomc - 你刚刚为我节省了额外的工作时间。现在做'jquery-ui'伙计是否需要多个自动完成元素的解决方法? – DevlshOne

9

您可以覆盖_renderItem

$.ui.autocomplete.prototype._renderItem = function (ul, item) { ... }; 
+0

建议这样做? –

+1

这是一种方法。既不推荐也不推荐。 – Damax