php教程

超轻量级php框架startmvc

laravel Validator ajax返回错误信息的方法

更新时间:2020-04-09 11:10:45 作者:startmvc
将returnback()->withErrors($validator->errors())->withInput();替换为下面的代码$validator=\Validator::m

将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 ajax