我正在发送一个AJAX请求,并且由于我正在向控制器发送一个数组,它会以数组的形式返回。以下是它的发送方式。
var data = { 'typeDetails[games]' : [], 'typeDetails[art]' : [] };
错误数据将以
的形式返回typeDetails.games.0 {
0: 'this is text',
},
typeDetails.art.0 {
0: 'this is more text',
}
我可以使用以下内容解析它。
var errors = $.parseJSON(data.responseText);
console.log(errors["typeDetails.games.0"]);
但是,我不需要“游戏”,而是需要一张通配符,以防它是“艺术”。我尝试了*,但没有工作。我的搜索只提出了其他方法来弄清楚如果它不是“游戏”那么中间字符串应该是什么。通配符是否容易替换?
谢谢!
答案 0 :(得分:0)
您可以尝试使用for..in
循环来迭代属性,对象的值
var errors = $.parseJSON(data.responseText);
for (var err in errors) {
// do stuff with property `err` in object `errors`
console.log(err, errors[err])
}