javascript - 将数据从 JSON 数组复制到 JS 对象以实现 jQuery 自动完成

标签 javascript jquery json object autocomplete

我正在尝试使用 jQuery 中的自动完成插件来允许用户使用文本字段快速搜索人名并返回他们的 Facebook 用户 ID。 Facebook 提供的 JSON 遵循以下原则:

{
   "data":[
      {
         "name":"Emma Alexander",
         "id":"8110855"
      },
      {
         "name":"Dave Suckow",
         "id":"19546358"
      },
      {
         "name":"Jessica Willits",
         "id":"45734687"
      }
   ]
}

但是,我想在本地进行搜索,而不是每次都检索 Facebook JSON,所以我认为我需要将所有名称和 ID 复制到本地 JavaScript 对象中(我认为这是最好的方法它?),然后使用 jQuery 来搜索这些名称。当用户从文本字段中选择姓名时,它将调用另一个函数并将所选人员的 Facebook ID 传递给它。

但是,我不确定这是否是最好的方法,或者我将如何真正着手实现它。

如果有人能提供几个小代码示例,尤其是将数据从 Facebook 的 JSON 复制到本地 Javascript 对象,然后搜索该对象,将不胜感激! :)

非常感谢

最佳答案

嗯..你可以做这样的事情......

var jsonval=
({
   "data":[
      {
         "name":"Emma Alexander",
         "id":"8110855"
      },
      {
         "name":"Dave Suckow",
         "id":"19546358"
      },
      {
         "name":"Jessica Willits",
         "id":"45734687"
      }
   ]
})


var name=new Array();
var id=new Array();
for(var i=0;i<jsonval.data.length;i++){
name.push(jsonval.data[i].name);
id.push(jsonval.data[i].id);

}

数组 nameid 将包含从 JSON 中获取的所有名称和 ID,并在创建的新数组中搜索所有值...这是一种方式。 .. 另一个是您可以将返回的 JSON 保存在变量 jsonval 中,然后每次使用用于将值插入数组的 for 循环进行搜索...

关于javascript - 将数据从 JSON 数组复制到 JS 对象以实现 jQuery 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5595144/

相关文章:

javascript - Gmail签名不适用于mailto

javascript - 使用javascript隐藏表单,简单错误

javascript - jQuery AJAX : Get Meta-Data from Cross Domain HTML-Page

jquery - 从 jQuery 移动 ListView 动态删除列表项时的刷新问题

json - 如何在json中输入标题?

javascript - 显示 AJAX 的不同数组描述的控制台

javascript - 在 meteor 中单击按钮时显示动态卡的隐藏部分

javascript - 如何在循环的同时使用 if/else 语句?

jquery - 获取当前选择器的值

python - json.loads在python中将小数点转换为 'e'