通过$ .each循环中的键读取JSON数据值

时间:2018-09-03 13:54:21

标签: javascript json ajax

我已经从控制器(通过ajax)返回了JSON数据,并希望访问该数据。这是对象(数组)的列表:键值,所以我想使用.each()访问所有数据。像这样的数组:

[{"filePath":"Desktop.zip","fileStatus":"Uploaded"},{"filePath":"Desktop\\dates.xml","fileStatus":"Uploaded"}]

,代码为:

$.ajax({
                    url: '@Url.Action("GetFilesNames", "Home")',
                    type: 'POST',                    
                    success: function (data) {                      

                        $.each(data, function (value) {
                            console.log(value['filePath'], value['fileStatus']);

                            });
                    }
                });

First picture, data isn't loaded

但是data.each值是不确定的。

因此,我尝试对所有数据进行console.log,对其进行json.stringify,解析(但以某种方式出错),并解析stringyfied版本,但这没有任何意义。即使我将此字符串化版本(路径)或已解析字符串化版本(listOfFiles)与.each一起使用-相同的结果:未定义。

enter image description here

1 个答案:

答案 0 :(得分:2)

请参见the documentation for jQuery.each

  

回调
   类型:函数(整数indexInArray,对象值)

现在查看您的代码:

$.each(data, function (value) {

您正在尝试从 first 参数读取属性,该参数是 Integer (array()中的索引,而不是值。您需要从 second 参数中读取属性。

 $.each(data, function (index, value) {