[英]unable to iterate through json array from $.ajax
我在查看页面上将数据分配给div时遇到了一些问题。 代码是这样的:
$.ajax({
url: "/api/Flight/SearchFlight",
type: "Post",
data: $('form').serialize() + '&' + $.param({
'TokenId': $("#pageInitCounter").val()
}, true),
success: function(data) {
alert(data);
$('#responsestatus').text(data.Response);
$('#divResult').html(data);
});
如您所见,在这里,我可以在警报框中看到整个数据。 另外,我已经将整个数据分配给div,并且可以在页面上完美地看到整个数据。 我得到的样本响应是一个巨大的数据,因此我为此发布了链接http://pastebin.com/eEE72ySk
现在,我想遍历每个数据,但是无法做到。 例:
$('#responsestatus').text(data.Response.ResponseStatus);
然后错误是:
UncaughtTypeError:无法读取未定义的属性“ ResponseStatus”
请有人告诉我这里有什么问题。 为什么我不能遍历数据以响应
使用Json数据类型。.i在这里写了一个示例。
$.ajax({
dataType: "json",
url: url,
data: data,
success: success
});
您正在以字符串形式返回响应,但尝试像对JavaScript对象一样对其进行操作。
您可以做两件事之一
第一个应该像在请求上设置datatype
属性一样简单
$.ajax({
url: "/api/Flight/SearchFlight",
type: "Post",
datatype: 'json',
data: $('form').serialize() + '&' + $.param({
'TokenId': $("#pageInitCounter").val()
}, true),
success: function(data) {
$('#responsestatus').text(data.Response.ResponseStatus);
});
第二个涉及使用前解析响应
$.ajax({
url: "/api/Flight/SearchFlight",
type: "Post",
data: $('form').serialize() + '&' + $.param({
'TokenId': $("#pageInitCounter").val()
}, true),
success: function(data) {
var result = JSON.parse(data);
$('#responsestatus').text(result.Response.ResponseStatus);
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.