javascript - jQuery 解析后获取未定义的 JSON

标签 javascript jquery json parsing

这是 JSON 字符串的示例:

    {
      "table": {
         "tfoot": "Footer",
         "tr0": [
                  {
                  "form": "formData",
                  "td": "Content"
                  }
                ]
       }
     }

还有我用来解析它的 jQuery 代码:

$.ajax({ 
    type: 'GET', 
    url: source, 
    dataType: 'json',
    success: function (data) { 

            $.each(data, function() {
              $.each(this, function(key, value) {
                switch (key) {
                    case "tfoot":
                        alert(value) // access to this node works fine                      
                    break;

                    default: 
                        alert(value.td) // this is undefined
                    break;
                }       
              });
            });
        }
    });

我在 Chrome 中尝试了一个 Console.log,我可以看到每个节点并且数据正常。任何人都知道如何访问“表单”或“td”节点?

最佳答案

对象值是一个数组,所以你不能访问它的td属性。如果您想获得数组 td 属性中的第一项,您需要执行以下操作:

value[0].td

完整代码:

$.each(t, function() {
  $.each(this, function(key, value) {
    switch (key) {
      case "tfoot":
        console.log(value) // access to this node works fine                      
      break;

      default: 
        console.log(value[0].td) // this now prints "Content"
      break;
    }       
  });
 });

关于javascript - jQuery 解析后获取未定义的 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13586048/

相关文章:

javascript - 将 ul 中的第一项插入到最后

javascript - 控制jquery动画的速度

Java - 获取 JSON 对象数组?

java - 对于 GF4 和 Jackson,未找到 Media type=application/json 的 MessageBodyWriter

javascript从rpc获取数据

javascript - Jquery ajax onSuccess 事件

javascript - 检查是否所有 VISIBLE 选择框都选择了某些东西?

javascript - 代码仅在 CodeCademy 中返回错误。找不到问题

javascript - 如何使用jquery依次执行一系列动画?

javascript - 提交前更改表单的键名、值和操作 URL