我需要解析包含此结构的 JSON 答案
{
"TariffItems": [
{
"TariffId": "89",
"TariffCode": "Y",
"TariffRusName": "Эконом"
},
{
"TariffId": "67",
"TariffCode": "C",
"TariffRusName": "Бизнес"
},
{
"TariffId": "87",
"TariffCode": "J",
"TariffRusName": "Премиум"
}
]
}
当我在 Firebug 中看到它时,它显示每个 TariffItems 都包装在对象中,这意味着跟随 jquery 无法获取值。我该如何更改?
$.ajax({
url: "/Home/GetTariffs",
type: "post",
cache: false,
success: function (result) {
$.each(result, function () {
$("#tariffs").append($("<button class='btn btn-default tariff'/>").val(this.TariffId).text(this.TarifNameRus));
$("div#tariffs.btn-group button.btn.btn-default").first().addClass("active");
});
},
error: function (xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
alert(err.Message);
}
});
最佳答案
将 ajax 代码更改为以下内容:
$.ajax({
url: "/Home/GetTariffs",
type: "post",
cache: false,
success: function (result) {
$.each(result.TariffItems, function () { // <---------
$("#tariffs").append($("<button class='btn btn-default tariff'/>").val(this.TariffId).text(this.TarifNameRus));
$("div#tariffs.btn-group button.btn.btn-default").first().addClass("active");
});
},
error: function (xhr, status, error) {
var err = eval("(" + xhr.responseText + ")");
alert(err.Message);
}
});
您正在接收一个对象。您要循环的项目是该对象的一部分。 因此,您必须使用要传递给 jQuery 循环代码的对象项。
在本例中为 result.TariffItems
关于javascript - 我应该如何使用对象中包装的 jQuery JSON 答案进行解析?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28605619/