将return back()->withErrors($validator->errors())->withInput();替换为下面的代码
$validator = \Validator::make($request->input(), $rules, $messages);
if ($validator->fails()) {
//将返回错误循环组装成字符串
$arr = [];
foreach ($validator->getMessageBag()->toArray() as $k=>$error){
array_push($arr, "li>".$error[0]."/li>");
}
$str = implode(' ', $arr);
return \Response::json([
'success' => false,
'errors' => $str
]);
}
然后直接在ajax输出相应的错误就行了
div class="alert alert-danger alert-dismissible fade in" style="display: none;" id="yc">
button type="button" class="close" data-dismiss="alert" aria-label="Close">span aria-hidden="true">×/span>/button>
ul class="margin-bottom-none padding-left-lg" id="li1">
/ul>
/div>
$.ajax({
method: 'post',
data: form,
dataType:'json',
url: $('#url').val(),
success: function (data) {
//console.log(data);
if (data.code == 0){
$('#textarea').html(JSON.stringify(data.resp, null, "\t")).css("display","block");
} else if(data.code == 1) {
layer.msg("失败"+data.msg,{icon:2})
}else if (data.success == false) {
if (data.errors){
$('#yc').css('display','block');
$('#li1').html(data.errors);
}
}
}
})
以上这篇laravel Validator ajax返回错误信息的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:- Laravel Validator自定义错误返回提示消息并在前端展示
- Laravel Validator 实现两个或多个字段联合索引唯一
- 如何优雅的使用 laravel 的 validator验证方法
- Laravel4中的Validator验证扩展用法详解
- laravel 解决Validator使用中出现的问题