我有一个返回一行数据的ajax调用,但我似乎无法访问数据,任何想法。
AJAX
$.ajax({
url: '@Url.Action("BanksDetails")',
data: JSON.stringify({ Id: BankId }),
dataType: 'JSON',
contentType: "application/json; charset=utf-8",
async: true,
type: 'POST',
success: function (data) {
console.log('Data' + data[0].BankName);
},
error: function (__x, __h, __m) {
console.log('ajax returned error', __m, __x, __h);
}
});
RESPONSE
{"Id":1,"BankName":"Bank xxxxxxx","Funding":70.00}
上面给出了错误:
Cannot read property 'BankName' of undefined
答案 0 :(得分:4)
您的data
是对象,而不是包含该对象的数组。所以你不想要[0]
,只需:
console.log('Data' + data.BankName);
您收到data[0].BankName
的错误,因为0
上没有data
属性,因此data[0]
为undefined
,您无法阅读来自值undefined.
(如果您需要[0]
,则回复需要为[{"Id":1,"BankName":"Bank xxxxxxx","Funding":70.00}]
- 请注意[
和]
。但{...}
表示对象。 )