我正在使用JQuerys Autocomplete插件,但在输入任何内容时都不会自动完成。
任何想法为什么它不起作用?基本的例子有效,但不是我的。
var ppl = {"ppl":[{"name":"peterpeter", "work":"student"},
{"name":"piotr","work":"student"}]};
var options = {
matchContains: true, // So we can search inside string too
minChars: 2, // this sets autocomplete to begin from X characters
dataType: 'json',
parse: function(data) {
var parsed = [];
data = data.ppl;
for (var i = 0; i < data.length; i++) {
parsed[parsed.length] = {
data: data[i], // the entire JSON entry
value: data[i].name, // the default display value
result: data[i].name // to populate the input element
};
}
return parsed;
},
// To format the data returned by the autocompleter for display
formatItem: function(item) {
return item.name;
}
};
$('#inputplace').autocomplete(ppl, options);
确定。更新:
<input type="text" id="inputplace" />
因此,在输入字段中输入例如“peter”时。不会显示自动填充建议。它应该给“peterpeter”但没有任何反应。
还有一件事。使用此示例非常有效。
var data = "Core Selectors Attributes Traversing Manipulation CSS Events Effects Ajax Utilities".split(" ");
$("#inputplace").autocomplete(data);
答案 0 :(得分:3)
好吧,查看该插件中的代码,“parse”选项看起来只有在AJAX调用检索数据时才会调用它。作为实验,您可以尝试传递数据,使其不需要它:
var ppl = [{"name":"peterpeter", "work":"student"},
{"name":"piotr","work":"student"}];