如何在 JQuery 中读取复杂的 JSON Stringify 数据?
How to read my complex JSON Stringify data in JQuery?
我正在尝试显示消息 电子邮件 'xxx@gmail.com' 已被占用
来自这个JSON
{"readyState":4,"responseText":"{\"Message\":\"The request is invalid.\",\"ModelState\":{\"\":[\"Name xxx is already taken.\",\"Email 'xxx@gmail.com' is already taken.\"]}}","responseJSON":{"Message":"The request is invalid.","ModelState":{"":["Name xxx is already taken.","Email 'xxx@gmail.com' is already taken."]}},"status":400,"statusText":"Bad Request"}
我已经检查过我之前的问题 。我也尝试了相同和不同的类型,如下所示。但是我失败了
fail(function (showError) {
console.log('Signup failed');
console.log('full error = ' + JSON.stringify(showError));
var response = JSON.stringify(showError);
console.log("response error = "+JSON.stringify(response.responseText.ModelState));
console.log('Message error = ' + JSON.parse(showError.responseText).Message);
console.log('ModelState error = ' + JSON.parse(showError.responseText).ModelState[0]);
//console.log('ModelState error val= ' + JSON.parse(showError.responseText).ModelState[0].val);
console.log('ModelState error text= ' + JSON.parse(showError.responseText).ModelState[0].text);
});
ModelState
是一个以空字符串作为第一个键的对象(其中包含您的错误数组)-因此您可以:
let errors = JSON.parse(showError.responseText).ModelState[""];
我正在尝试显示消息 电子邮件 'xxx@gmail.com' 已被占用 来自这个JSON
{"readyState":4,"responseText":"{\"Message\":\"The request is invalid.\",\"ModelState\":{\"\":[\"Name xxx is already taken.\",\"Email 'xxx@gmail.com' is already taken.\"]}}","responseJSON":{"Message":"The request is invalid.","ModelState":{"":["Name xxx is already taken.","Email 'xxx@gmail.com' is already taken."]}},"status":400,"statusText":"Bad Request"}
我已经检查过我之前的问题
fail(function (showError) {
console.log('Signup failed');
console.log('full error = ' + JSON.stringify(showError));
var response = JSON.stringify(showError);
console.log("response error = "+JSON.stringify(response.responseText.ModelState));
console.log('Message error = ' + JSON.parse(showError.responseText).Message);
console.log('ModelState error = ' + JSON.parse(showError.responseText).ModelState[0]);
//console.log('ModelState error val= ' + JSON.parse(showError.responseText).ModelState[0].val);
console.log('ModelState error text= ' + JSON.parse(showError.responseText).ModelState[0].text);
});
ModelState
是一个以空字符串作为第一个键的对象(其中包含您的错误数组)-因此您可以:
let errors = JSON.parse(showError.responseText).ModelState[""];