我听说没有goto声明这样的东西。我可能需要在函数中填充JSON和array.push。这听起来不对吗?我是否还需要在.change语句中调用该函数。
var tagsArray = []
$.getJSON("https://api.deckbrew.com/mtg/cards/typeahead?q=" + tags.value,function(result){
$.each(result, function(i, field){
tagsArray.push(field.name);
});
$( "#tags" ).autocomplete({
source: tagsArray
});
$( "#tags" ).change({
// do some
});
});
答案 0 :(得分:1)
将JSON字符串作为autocomplete
的数据返回的最简单方法是使用remote datasource。这是一个例子:
$("#tags").autocomplete({
"source": function (request, response) {
var term = request.term || ''; // default to empty string
$.getJSON('https://api.deckbrew.com/mtg/cards/typeahead', {
"q": term
}, function (data, status, xhr) {
var names = data.map(function (value, index, array) {
return value.name; // iterate through data and build new array from name
}).sort(); // sort it
response(names); // send it to autocomplete to use as datasource
});
}
});
并适用于[更新]小提琴: