laravel 5验证ajax在javascript中呈现错误响应以显示视图中的错误

时间:2017-09-14 08:39:45

标签: javascript jquery ajax laravel-5.4 laravel-validation

我有一个表单验证来验证我将数据添加到数据库中。我是使用ajax / javascript的初学者。我如何使用ajax在我的视图中显示错误。

我已经通过此代码从ajax返回json:

if ($validator->fails()) {    
             return response()->json(['errors' => $validator->messages(), 'status' => 422], 200);
}

在我看来,我有这个:

<div class="row">
   <div class="col-lg-12 col-md-12 col-sm-12 {{ $errors->has('catname') ? ' has-error' : '' }}" style="padding-bottom: 10px;">
        <input class="form-control" name="catname" placeholder="Category name" type="text" required />
        @if ($errors->has('catname'))
          <span class="help-block">
         <strong>{{ $errors->first('catname') }}</strong>
              </span>
        @endif
    </div>
</div>

如何返回错误以使我的输入类型显示错误。

这是我的ajax。

function addCategoryAjax(e) {
    e.preventDefault();

    $.ajax({         
        url: "{{ route('admin.addcat') }}",        
        type: "POST",
        data: $("#frmAddcategory").serialize(),
        dataType: "JSON",
        success: function(data) {
           if(data.status == 422) {
             for (var error in data.errors) {
                $('.errors').append(data.errors[error] + '<br>');
              }
           }
        }
    }); 
}

1 个答案:

答案 0 :(得分:-1)

function addCategoryAjax(e) {
e.preventDefault();

$.ajax({         
    url: "{{ route('admin.addcat') }}",        
    type: "POST",
    data: $("#frmAddcategory").serialize(),
    dataType: "JSON",
    success: function(data) {
       //if success
       console.log(data);
       alert('success');
    },
    error: function(data){
      //if error
      if(data.responseJSON == 422) {
         $('.errors').html('');
         for (var error in data.responseJSON) {
            $('.errors').append(data.responseJSON[error] + '<br>');
          }
       }
    }
}); 
}