我需要解析ajax错误。

这是我的代码。

error:function(data){
        var errors = data.responseJSON;

        errorsHtml = '<div class="alert alert-danger"><ul>';
        $.each( errors, function(key, value) {
            errorsHtml += '<li>'+ errors[key] + '</li>'; //showing only the first error.
        });
        errorsHtml += '</ul></div>';
        alert(errorsHtml);
},


输出是

<div class="alert alert-danger"><ul><li>The Address Name field is required.,The Recipient field is required.,The Address field is required.</li></ul></div>


我做不到

<div class="alert alert-danger>
<ul>
    <li>The Address Name field is required.</li>
    <li>The Recipient field is required.</li>
    <li>The Address field is required.</li>
</ul>




我在哪里犯错?

最佳答案

从您的内容来看,errors是一个对象,它具有一个名为errors的键,该键包含错误消息数组。

因此,您需要遍历errors数组,以便

var errors = data.responseJSON;

errorsHtml = '<div class="alert alert-danger"><ul>';
$.each(errors.errors, function (key, value) {
    errorsHtml += '<li>' + value + '</li>'; //showing only the first error.
});
errorsHtml += '</ul></div>';
alert(errorsHtml);




另一个简单的方法是

var errorsHtml = '<div class="alert alert-danger"><ul>';
errorsHtml += '<li>' + errors.errors.join('</li><li>') + '</li>';
errorsHtml += '</ul></div>';

07-24 09:38
查看更多