我在查看页面上为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'
请有人告诉我这里有什么问题。为什么我不能在响应中迭代数据
答案 0 :(得分:2)
使用Json datatype..i在这里写了一个示例..
$.ajax({
dataType: "json",
url: url,
data: data,
success: success
});
答案 1 :(得分:2)
您将回复作为字符串,但尝试对其进行操作,就像它是一个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);
});