当用户使用 jquery ui在输入中键入内容时,我尝试实现自动完成。当用户输入内容时,他应该看到来自json的翻译。但是我从li
中的新ul
开始从JSON开始获取每个密钥,如下图所示:
screenshot http://www.picshare.ru/uploads/140810/gF5XdBXyXt.jpg
我希望只有一个li
翻译。如何修改我的代码以获得预期的结果,如下图所示:
screenshot1 http://i66.fastpic.ru/big/2014/0810/75/9b3892bbd21141edf32407f1a2329075.jpg
这是jQuery代码:
$('#search').autocomplete({
source: function (request, response) {
$.getJSON("/search/" + request.term, function (data) {
response($.map(data, function (value, key) {
return {
label: value
};
}));
});
},
minLength: 2,
delay: 100
});
这是JSON:
{"word":"cat","translation":"кошка","synonymous":["кот","котенок","котик"],"transcription":"kæt","examples":{"pedigreed cats":"породистые кошки","Cheshire cat":"Чеширский кот"}}
提前致谢!
EDITED
$('#search').autocomplete({
source: function (request, response) {
$.getJSON("/search/" + request.term, function (data) {
response($.map(data, function (value, key) {
}));
});
},
minLength: 2,
delay: 100
});
答案 0 :(得分:2)
在您要求翻译的问题中,但在图片中您打印的是同义词,我会将代码设为同义词,但翻译应该相同:
source: function (request, response) {
$.getJSON("/search/" + request.term, function (data) {
var result = data["word"] + " - " + data["synonymous"].join(",");
response([result]);
});
},
答案 1 :(得分:1)
您是否可以交换值和键,因此该行将是:
response($.map(data, function (key, value)
在我打字的时候,可以通过MadFlow来获取此信息。