我正在使用 jquery v 2.0.0 和 jquery ui 1.10.3
以下是我的 jquery ui 自动完成代码:
$nameField.combobox({
source: people,
buttonSelector: '.toggleList',
focus: function () {
return false;
},
select: function (event, ui) {
$nameField.val(ui.item.name).data({
id: ui.item.id,
name: ui.item.name,
birthdate: ui.item.birthdate
});
return false;
}
}).data('ui-autocomplete')._renderItem = function (ul, item) {
if (!_.include(self.idArr, item.id)) {
return $('<li></li>').data('ui-autocomplete-item', item).append('<a>' + item.name + '</a>').appendTo(ul);
}
};
这在旧版本的 jquery 中运行良好。但是升级后,当我单击.toggleList
按钮时,它会第一次打开,并且还有另一个按钮可以将所选名称添加到 div 中。之后,当我单击“.toggleList”组合选择器时,自动完成功能没有打开。它给了我以下错误:
Uncaught TypeError: Cannot call method 'data' of undefined jquery.ui.autocomplete.js?1376892069:527
有人遇到过这样的问题吗?我尝试了其他 stackoverflow 线程中提到的几个修复,但没有一个对我有用。
希望有人可以帮助我修复这个错误
谢谢