想象一个包含以下数据的 json 文件:
[
{
color: "red",
value: "#f00"
},
{
color: "green",
value: "#0f0"
},
{
color: "blue",
value: "#00f"
},
{
color: "cyan",
value: "#0ff"
}
]
使用 jQuery 的自动完成方法,我希望它能够将颜色显示为选项以在输入中选择和插入值。
<input type="text" name="selector" id="selector" />
<input type="text" name="color" id="color" />
<input type="text" name="value" id="value" />
以上不需要介绍。用于搜索颜色的选择器,input.color
带有颜色值和input.value
带有值的值。
编辑: 我有这个 JSON 数据:
[{
"label": "Sec\u00e7\u00e3o 1",
"value": "1"
}, {
"label": "Sec\u00e7\u00e3o 2",
"value": "2"
}, {
"label": "Sec\u00e7\u00e3o 3",
"value": "3"
}, {
"label": "Sec\u00e7\u00e3o 4",
"value": "4"
}]
这个HTML:
<input type="text" id="name" />
<input type="text" id="value" />
和这个jQuery:
$(document).ready(function(){
$("#name").autocomplete({
source: "json.php",
select: function (event, ui) {
$("#name").val(ui.label);
$("#value").val(ui.value);
}
});
});
我按照安德鲁的回答,它提示我选择数据,但如果我警告ui.label
和ui.value
变量,它会显示“未定义”。我错过了什么?
Edit2: 假设我有这个 HTML:
<input type="text" class="name" />
<input type="text" class="value" />
<input type="text" class="name" />
<input type="text" class="value" />
是否可以使用相同的方法处理多个选择器.autocomplete()
?喜欢,选择我想要使用的标签,input.name
然后只更新它input.value
旁边的标签?
[input.name] [input.value]
^ 我选择 ^ 更新
它旁边的标签值
[input.name] [input.value]
^ 这保持不变 ^