使用jquery访问嵌套的json数组

时间:2015-10-30 16:08:23

标签: jquery json

我正在尝试从jquery $ .each访问嵌套的JSON数组,但我无法。这是我的代码:

console.log("Entered Script");
$.getJSON('json/insuranceData.json', function(data) {
  $.each(data.insuranceReport, function(i, f) {
    console.log("first $.each part of Script");
    $.each(data.insuranceReport.dataFilePaths, function(i, g) {
      console.log("second $.each part of Script");
      var dataFile = "?dataTablePath=" + g.path + "&"
      console.log(g.path);
      if (g == null) {
        console.log("script broke here")
        return false; // Break
      }
    });
    var divData = "<tr>" + "<td>" + "<a href='employees/index.html" + f.dataFile + "insuranceName=" + f.insuranceName + "'>" + f.insuranceName + "</a>" + "</td>" +
      "<td>" + f.employeeCost + "</td>" + "<td>" + f.employerCost + "</td>" + "<td>" + f.totalCost + "</td>" + "</tr>"
    $(divData).appendTo("#dataTable tbody");
  });
});
console.log("script comnpleted.");

我想访问嵌套在insuranceReport中的dataFilePaths数组,但它似乎不想工作。我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

  

我想访问嵌套在insuranceReport

中的dataFilePaths数组

然后你需要f.dataFilePaths,而不是data.insuranceReport.dataFilePaths

$.getJSON('json/insuranceData.json', function(data) {
  $.each(data.insuranceReport, function(i, f) {
    //                                     ^------------ will refer
    console.log("first $.each part of Script");       // to each entry
    $.each(f.dataFilePaths, function(i, g) {          // in data.insuranceReport
    //     ^----- So use it here