我已经从控制器(通过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']);
});
}
});
但是data.each值是不确定的。
因此,我尝试对所有数据进行console.log,对其进行json.stringify,解析(但以某种方式出错),并解析stringyfied版本,但这没有任何意义。即使我将此字符串化版本(路径)或已解析字符串化版本(listOfFiles)与.each一起使用-相同的结果:未定义。
答案 0 :(得分:2)
请参见the documentation for jQuery.each
:
回调
类型:函数(整数indexInArray,对象值)
现在查看您的代码:
$.each(data, function (value) {
您正在尝试从 first 参数读取属性,该参数是 Integer (array()中的索引,而不是值。您需要从 second 参数中读取属性。
$.each(data, function (index, value) {