什么是错误的这个自动完成代码(JQuery-UI自动完成)
What is wrong with this Autocomplete Code (JQuery-UI AutoComplete)
$("#Auto").autocomplete({
minLength: 4,
type: 'GET',
source: function (request, response) {
var term = request.term;
if (term in cache) {
response(cache[term]);
return;
}
var url = '<%=Url.Action("AutoComplete", "Thing", new {area = "Admin"}) %>' + "?terms=" + request.term;
lastXhr = $.getJSON(url, request, function (data, status, xhr) {
cache[term] = data;
if (xhr === lastXhr) {
response(data);
}
});
}
})
.data("autocomplete")._renderItem = function (ul, item) {
return $("<li></li>")
.data("item.autocomplete", item)
.append("<a> Thingy1: " + item.Prop1 + " Thingy2: " + item.Prop2 + "<br>" + "</a>")
.appendTo(ul);
};
假设#Auto, Prop1和Prop2存在,并且有一个名为Thing的控制器。这在另一个页面上确实有效,但由于某种原因,我在一个页面上得到了这个错误:
$("#Auto").autocomplete({minLength: 4, type: "GET", source: function (request, response);var term = request.term;if (term in cache) {response(cache[term]);return;}var url = '<%=Url.Action("AutoComplete", "Thing", new {area = "Admin"}) %>' + "?terms=" + request.term;lastXhr = $.getJSON(url, request, function (data, status, xhr) {cache[term] = data;if (xhr === lastXhr) {response(data);}});}}).data("autocomplete") is undefined
我加载了以下文件:
jquery-ui-1.8.2.custom.min.js
jquery-1.4.2.min.js
jquery.autocomplete.pack.js
jquery.ajaxQueue.js
jquery.bgiframe.min.js
thickbox-compressed.js
jquery-ui-1.8.2.custom.css
jquery-require.1.1.packed.js
加上一些其他自定义的东西。
是我遗漏了什么,还是我包含了太多文件?
首先,清理你的代码(看起来像是被懒人剪切的&粘贴)并解释你想做什么会有帮助。
然而,第一眼我可以看到你的错误是:
.data("autocomplete")未定义
这意味着页面上不存在称为"自动完成"的元素。尝试更改
.data("autocomplete")
.data("#Auto")
如果您试图存储自动完成控件中包含的数据以供以后使用。
恐怕Terry的回答是错误的。您的代码不是元素选择器。data
函数用于检索已链接到HTML元素的数据对象。在您的示例中,您正在检索链接到id为Auto
的元素的数据。
var data = $("#Auto").data("autocomplete");
// data is now an object stored by the autocomplete plugin.
您的问题似乎意味着无法找到密钥为autocomplete
的数据。我不确定这怎么可能发生,除非你的自动完成脚本没有做他们的工作。
镝是错的,不是特里。以下是更改的源链接:http://jqueryui.com/upgrade-guide/1.10/#removed-data-fallbacks-for-widget-names
dialog现在是ui-dialog,或者uiDialog, autocomplete现在是ui-autocomplete,等等
相关文章:
- jQuery UI自动完成突然停止工作
- Rails/JSON:如何将JSON用于jquery UI自动完成表单
- 停止jQuery UI滑块移动超过给定值
- Jquery UI自动完成无法工作
- jquery ui滑块上的滑块值
- jQuery UI可排序-多连接列表拖动
- 您有更好的动态方式来缩短复杂的代码jquery吗
- 使用Jquery ui时滑块无法工作
- JQuery UI可拖动潜水与滚动棒到鼠标
- 我可以从代码后面更改按钮单击上的Jquery ui活动选项卡吗
- jQuery UI菜单代码未呈现
- Jquery UI使用表oracle在代码点火器中自动完成
- jQuery UI在firefox中无法使用演示中的重复代码
- 什么是错误的这个自动完成代码(JQuery-UI自动完成)
- Jquery UI添加不必要的代码和破坏的东西
- 不能让Jquery UI正常工作.需要拆分代码
- 如何合并Jquery UI可排序代码
- jquery UI对话框中使用的Asp.net控件值在代码后面是空的
- 从代码后面打开jQuery UI对话框
- jQuery UI 对话框代码帮助