javascript - 使用 $.each() 解析复杂的 JSON

标签 javascript jquery json

我有这个 JSON(不知道它是字符串还是对象,你可能知道):

{
   "palvelut":[
      {
         "palvelu_id":"1",
         "palvelu_nimi":"Perusteita ja varmuutta juhlameikkiin\t",
         "palvelu_kuvaus":"Koulutus kestää 2h, jonka aikana käydään läpi hyvä meikkipohja, kasvojen korostus, poskipunan laitto, klassinen silmien ehostus ja hienostunut mutta simppeli huulimeikki. Suosittelemme että otat oman meikkipussisi sisältöineen mukaan, tai ainakin meikit joita haluat oppia käyttämään. ",
         "palvelu_hinta":"10"
      }
   ],
   "ajat":[
      {
         "aika_id":"1",
         "aika_kello":"14.00",
         "aika_paivamaara":"18.11.2013",
         "aika_paikkoja":"5",
         "aika_palvelu":"1"
      },
      {
         "aika_id":"4",
         "aika_kello":"16.30",
         "aika_paivamaara":"18.11.2013",
         "aika_paikkoja":"5",
         "aika_palvelu":"1"
      }
   ]
}

但我无法用它做任何事!无论我尝试什么,我都会得到未定义的结果,[Object Object] 或根本什么都没有。

例如,如果我尝试使用 ajat 中的数据向选择字段添加选项,我什么也得不到。

alert(json.ajat.aika_id);

警报未定义。

如何用 $.each 解析它?

即使是最简单的示例也不会产生任何结果。

$.each(json, function (key, value) {
    alert(key + ": " + value);
});

最佳答案

json.ajat 包含一个数组(这就是方括号所代表的),因此您必须对其进行索引:

alert(json.ajat[0].aika_id);

或者你可以循环它:

$.each(json.ajat, function(key, value) {
    alert(key + ": " + value);
});

关于javascript - 使用 $.each() 解析复杂的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19652265/

相关文章:

javascript - 如何触发更改函数以在加载时触发?

javascript - .pop() 可以用于 JavaScript 中的对象数组吗?

jquery - 用数组中的字符串填充 div

javascript - jQuery 验证中的正则表达式 - jQuery 中的单引号问题

javascript - 为表中的内部按钮设置类并延迟加载数据

android - 通过 HTTP 将 JSON 发送到服务器在 android 中放置请求

java - 套接字上的 JSON - 这是个好主意吗?

javascript - 如果用户存在,请使用数据库表中的数据填写表单文本框?

javascript - AngularJS 中的重定向

javascript - php $_GET ["variable"] 未设置,尽管应该设置