为 jquery 自动完成重新格式化数组
Posted
技术标签:
【中文标题】为 jquery 自动完成重新格式化数组【英文标题】:Reformatting an array for jquery autocomplete 【发布时间】:2015-08-26 05:30:15 【问题描述】:我有一个如下所示的数组:
thing1,thing2,thing3
我需要将其重新格式化为如下所示:
[
value: 'thing1', data: 'thing1' ,
value: 'thing2', data: 'thing2' ,
value: 'thing3', data: 'thing3' ,
]
我当前的功能看起来像这样,但显然不起作用:
function combine_ids(ids)
return (ids.length ? " [ value: '" + ids.join("'," + " data: '" + ids + " ' ] ") : "");
【问题讨论】:
查看此链接:***.com/questions/15009448/… @MuhammadBilal,这与我的要求无关。 【参考方案1】:假设你的数组看起来像这样
var arr = ["thing1","thing2","thing3"]
你可以像这样使用.map()
var result = arr.map(function(item)
return "value": item, "data": item;
);
这将返回这个
[
"value":"thing1","data":"thing1",
"value":"thing2","data":"thing2",
"value":"thing3","data":"thing3"
]
你可以像这样改变你的方法
function combine_ids(arr)
return arr.map(function(item)
return "value": item, "data": item;
);
var result = combine_ids(arr);
var arr = ["thing1","thing2","thing3"]
function combine_ids(arr)
return arr.map(function(item)
return "value": item, "data": item;
);
var result = combine_ids(arr);
alert(JSON.stringify(result));
【讨论】:
【参考方案2】:试试这个
function combine_ids(ids)
var Aobj=[];
for (var x in ids)
Aobj.push('value':ids[x],'data' : ids[x])
return Aobj;
combine_ids(['thing1','thing2','thing3'])
【讨论】:
以上是关于为 jquery 自动完成重新格式化数组的主要内容,如果未能解决你的问题,请参考以下文章
rails 为 jquery-ui 自动完成小部件格式化 json.jbuilder
导航 json 文件以创建 jquery 自动完成所需的数组
在 jquery 自动完成插件中,数据没有被解析为 json