jQuery UI 站点中的示例基于 jQuery UI 1.10,jQuery UI 1.8 有点不同,因此您必须更改代码才能使其正常工作。
主要区别在这里:
.data("autocomplete")._renderItem = function (ul, item) {
return $("<li>")
.data("item.autocomplete", item)
.append("<a>" + item.label + "<br>" + item.desc + "</a>")
.appendTo(ul);
data("ui-autocomplete")
必须是data("autocomplete")
并且您必须设置属性才能将data
您的附加信息添加到自动完成中。
代码:
$("#project").autocomplete({
minLength: 0,
source: projects,
focus: function (event, ui) {
$("#project").val(ui.item.label);
return false;
},
select: function (event, ui) {
$("#project").val(ui.item.label);
$("#project-id").val(ui.item.value);
$("#project-description").html(ui.item.desc);
$("#project-icon").attr("src", "images/" + ui.item.icon);
return false;
}
})
.data("autocomplete")._renderItem = function (ul, item) {
return $("<li>")
.data("item.autocomplete", item)
.append("<a>" + item.label + "<br>" + item.desc + "</a>")
.appendTo(ul);
};
演示:http: //jsfiddle.net/IrvinDominin/zvGKw/