我在组合框中使用Jquery ui自动完成插件,我正在从JSON文件中读取值。问题出在我的JSON文件中。我有相同价值的字段。像这样。 ({ 名称:A }, { 名称:A }, { 名称:B })
所以当我在组合框中键入'a'时,它会给我2'a'。但我只需要一个(我只需要JSON文件中的唯一值)。我该怎么做呢?我现在没有完整的代码,这就是我无法解释的原因。对不起,谢谢你。
答案 0 :(得分:1)
编辑:在将数据发送到jQuery自动完成插件之前,你可以使用类似的东西从json数组中删除重复的条目。
var names = {};
var param = "name"
$.each(data.people, function() {
if (!names[this[param]])
names[this[param]] = [];
names[this[param]].push(this);
});
然后我们可以source: names
答案 1 :(得分:1)
尝试这个....只能在输入字段中添加唯一值
select: function( event, ui ) {
var terms = split( this.value );
// remove the current input
terms.pop();
// add the selected item
if(!($.inArray(ui.item.value,terms) > -1))
terms.push( ui.item.value );
// add placeholder to get the comma-and-space at the end
terms.push( "" );
this.value = terms.join( ", " );
return false;
}