将return back()->withErrors($validator->errors())->withInput();替换为下面的代码
1
2
3
4
5
6
7
8
9
10
11
12
13
|
$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输出相应的错误就行了
1
2
3
4
5
|
< 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 >
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
$.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返回错误信息的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_39864544/article/details/89239117