当提交表单时,Laravel会回复下面的消息,而不会填写任何值。
我做return json_encode(array('validation' => $validator->messages());
在我的JS文件中,我的jQuery执行var result = JSON.stringify(JSON.parse(result));
如何迭代此JSON以逐个打印出每个错误?
{
"validation": {
"username_c": [
"The username c field is required."
],
"password": [
"The password field is required."
],
"email": [
"The email field is required."
],
"password_repeat": [
"The password repeat field is required."
],
"first_name": [
"The first name field is required."
],
"last_name": [
"The last name field is required."
],
"rsa": [
"The rsa field is required."
],
"rc": [
"The rc field is required."
],
"rz": [
"The rz field is required."
],
"op": [
"The op field is required."
],
"dp": [
"The dp field is required."
],
"mp": [
"The mp field is required."
],
"bd": [
"The bd field is required."
],
"tc": [
"The tc must be accepted."
]
}
}
答案 0 :(得分:0)
如果您将结果解析为JSON JSON.parse(result)
(或者使用Laravel使用Response::json(result)
将结果作为JSON返回给您,将会更容易。
然后使用jQuery.each:
$.each(result.validation, function(key, value){
// Each of you error, do something here
console.log('Error [' + key + ']' + ' : ' + value);
});
以上内容将错误打印到您的控制台。