Laravel验证器消息,在jQuery中迭代

时间:2014-07-22 20:46:35

标签: javascript php jquery json

当提交表单时,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."
        ]
    }
}

1 个答案:

答案 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);
});

以上内容将错误打印到您的控制台。