我在组合框中使用 Jquery ui 自动完成插件,并且正在从 JSON 文件中读取值。问题出在我的 JSON 文件中。我有相同值的字段。像这样。({名称:a},{名称:a},{名称:b})
因此,当我在组合框中键入“a”时,它会给我 2 个“a”。但我只需要一个(我只需要 JSON 文件中的唯一值)。我该怎么做呢?我现在没有完整的代码,这就是为什么我不能把它。很抱歉,谢谢。
我在组合框中使用 Jquery ui 自动完成插件,并且正在从 JSON 文件中读取值。问题出在我的 JSON 文件中。我有相同值的字段。像这样。({名称:a},{名称:a},{名称:b})
因此,当我在组合框中键入“a”时,它会给我 2 个“a”。但我只需要一个(我只需要 JSON 文件中的唯一值)。我该怎么做呢?我现在没有完整的代码,这就是为什么我不能把它。很抱歉,谢谢。
编辑:在将数据发送到 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
试试这个......只能在输入字段中添加唯一值
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;
}