我正在使用Jquery Autocomplete
我也在使用formatItem。我想输出
<json.key: json.value
离
Name: Adam
然而,我无法使用第4个参数得到json数据,我得到完整的json字符串作为第4个参数和一个结果。我如何使用json?是推荐的另一个自动完成? (这个看起来很不错......)
答案 0 :(得分:2)
答案 1 :(得分:2)
我正在使用带有此代码的jQuery UI:
function initAutocomplete() {
$("#tbDevices").autocomplete("Static/ui.autocomplete/GetDevices.ashx", {
width: 160,
selectFirst: false,
max: 100,
autoFill: true,
matchContains: true,
highlightItem: true,
parse: function(data) {
return $.map(eval(data), function(row) {
return {
data: row,
lable: row.lable, //value being searched for
value: row.value //value in text input
}
});
},
formatItem: function(row, i, max, term) {
return "<span style='font-size: 110%;'>" + row.lable + "</span><br/>" + "ID: " + row.value;
},
formatResult: function(row, i, max) {
return row;
}
}).result(function(event, item) {
document.getElementById('#hdnChosenDevice').value = item.value;
$('#tbDevices').val(item.lable);
});
}
ashx文件返回一个带有json的字符串:
[{"lable":"device1","value":"01"},{"lable":"device2","value":"02"}]
答案 2 :(得分:2)
我怀疑这仍然与这个问题相关,但为了完整起见,我将包括仍然存在(并积极开发)的独立jQuery自动完成插件:
答案 3 :(得分:0)
您无法更改json格式,因为它是标准格式。由于很难在服务器端构建它,我的建议是去寻找一个JSON api
您无需担心格式问题
还要确保将响应设置为“application / json”