jQuery UI 自动完成 select 从 json 获取所有值
jQuery UI autocomplete select get all values from json
JSON 有键:id、n 和 d。我需要获取所选项目的 'id' 和 'n' 才能创建 url.
$.ajax({
type: "GET",
url: "q.json",
success: function(data) {
var items = [];
$.each(data, function(key, val) {
items.push(val);
});
$("#tags").autocomplete({
maxResults: 4,
minLength: 2,
source: function(request, response) {
var filteredArray = $.map(items, function(item) {
if (item.n.toUpperCase().indexOf(request.term.toUpperCase()) == 0) {
return item.n + " ("+item.d+")";
} else {
return null;
}
});
response(filteredArray.slice(0, this.options.maxResults));
},
select: function(event, ui) {
alert("you selected " + ui.item.id);
window.location.href = ui.item.id+"-"+ui.item.n;
}
});
}
});
怎样才能达到预期的效果?
我在 JSON 中有 3 个键,必须在 select 中获取它们: function(event, ui)
$("#tags").autocomplete({
maxResults: 4,
minLength: 2,
source: function(request, response) {
var filteredArray = $.map(items, function(item) {
if (item.n.toUpperCase().indexOf(request.term.toUpperCase()) == 0) {
return {
id: item.id
label: item.n + " ("+item.d+")",
}
} else {
return null;
}
});
response(filteredArray.slice(0, this.options.maxResults));
},
select: function(event, ui) {
event.preventDefault();
$("#tags").val(ui.item.label);
window.location.href = ui.item.id+"-"+ui.item.n;
},
});
});
JSON 有键:id、n 和 d。我需要获取所选项目的 'id' 和 'n' 才能创建 url.
$.ajax({
type: "GET",
url: "q.json",
success: function(data) {
var items = [];
$.each(data, function(key, val) {
items.push(val);
});
$("#tags").autocomplete({
maxResults: 4,
minLength: 2,
source: function(request, response) {
var filteredArray = $.map(items, function(item) {
if (item.n.toUpperCase().indexOf(request.term.toUpperCase()) == 0) {
return item.n + " ("+item.d+")";
} else {
return null;
}
});
response(filteredArray.slice(0, this.options.maxResults));
},
select: function(event, ui) {
alert("you selected " + ui.item.id);
window.location.href = ui.item.id+"-"+ui.item.n;
}
});
}
});
怎样才能达到预期的效果?
我在 JSON 中有 3 个键,必须在 select 中获取它们: function(event, ui)
$("#tags").autocomplete({
maxResults: 4,
minLength: 2,
source: function(request, response) {
var filteredArray = $.map(items, function(item) {
if (item.n.toUpperCase().indexOf(request.term.toUpperCase()) == 0) {
return {
id: item.id
label: item.n + " ("+item.d+")",
}
} else {
return null;
}
});
response(filteredArray.slice(0, this.options.maxResults));
},
select: function(event, ui) {
event.preventDefault();
$("#tags").val(ui.item.label);
window.location.href = ui.item.id+"-"+ui.item.n;
},
});
});