从对列表中获取JSON值作为数组(用于自动完成功能)

时间:2014-07-22 07:42:55

标签: javascript jquery json jquery-autocomplete key-value

我从JSON文档中检索对的列表。 我可以通过

检索每一对
$.each(result,function(key,value)
{
    alert(key+" "+value);
}

但是在某些情况下,我只想检索每个值,将其放入数组中,以便将其添加到自动完成功能中:

$("#myTextField").autocomplete({source:listOfValues});

但是我找不到如何构造对象" listOfValues"。

我几乎没有JQuery和JSON的经验。 (这就是为什么我假设,我的问题很简单,但我找不到解决方案)

3 个答案:

答案 0 :(得分:1)

var list = [];
$.each(result,function(key,value)
{
  list.push(value);
}

$("#myTextField").autocomplete({source:list});

答案 1 :(得分:1)

您可以使用$.map功能:

var dimensions = { width: 10, height: 15, length: 20 };
var keys = $.map( dimensions, function( value, key ) {
  return key;
});

文档link

答案 2 :(得分:1)

您可以声明Array对象来保存listOfValues,并在迭代JSON result时将每个元素推送到表中:

var listOfValues = [];
$.each(result,function(key,value)
{
  listOfValues.push(value);
}
//Some other JS stuff
$("#myTextField").autocomplete({
  source:listOfValues
});