【问题标题】:Iterate thorought multi-dimensional json遍历多维json
【发布时间】:2017-05-10 08:26:02
【问题描述】:

我正在处理 C# 项目,我想出了一个场景,我要返回一个 具有 2 个数据表(表和表 1)的数据集的 JSON 对象。

如何迭代数据,以便可以将数据复制到 2 个不同的变量中。

Ajax 调用:-

 $(function () {
        $.ajax({
            type: 'POST',
            dataType: 'json',
            contentType: 'application/json',
            url: '@Url.Action("DrawChart")',
            data: '{}',
            success: function (chartsdataSet) {             
                var chartsdata = chartsdataSet.Table[0];
     }
    });

JSON 对象:-

 {
      "Table": [
        {
          "PlanName": "Half Yearly",
          "Paymentamount": 17925,
          "SettledAmount": 13300,
          "PackageAmount": 12479
        },
        {
          "PlanName": "Quaretly",
          "Paymentamount": 7900,
          "SettledAmount": 6000,
          "PackageAmount": 8000
        },
        {
          "PlanName": "Yearly",
          "Paymentamount": 8200,
          "SettledAmount": 9000,
          "PackageAmount": 5198
        }
      ],
      "Table1": [
        {
          "year": 2017,
          "monthid": 1,
          "MonthName": "Jan",
          "Paymentamount": 7900,
          "SettledAmount": 6000,
          "PackageAmount": 8000
        },
        {
          "year": 2017,
          "monthid": 2,
          "MonthName": "Feb",
          "Paymentamount": 1500,
          "SettledAmount": 1300,
          "PackageAmount": 1900
        }
      ]
    }

【问题讨论】:

  • 可以复制到 2 个变量中 - 你是什么意思? var a = chartsdataSet.Table, b = chartsdataSet.Table1; ?
  • 是的,您指定的 2 个不同变量中的表,它在 a 和 b 中返回 undefined ..
  • 描述的 JSON 是你在chartsdataSet 中找到的吗?
  • 我上面展示的同一个 json 对象..
  • 你试过JSON.parse(chartsdataSet)吗?

标签: javascript json multidimensional-array


【解决方案1】:

您收到 JSON 数据。如果您想将其用作 Javascript 对象,您应该使用 JSON.parse(chartsdataSet)

 $(function() {
     $.ajax({
         type: 'POST',
         dataType: 'json',
         contentType: 'application/json',
         url: '@Url.Action("DrawChart")',
         data: '{}',
         success: function(chartsdataSet) {
             var object = JSON.parse(chartsdataSet);
             var chartsdata = object.Table[0];
         }
     });
 })

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-18
    • 1970-01-01
    • 1970-01-01
    • 2019-01-25
    • 2012-04-16
    • 2012-08-14
    • 2016-11-04
    相关资源
    最近更新 更多