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

将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, "
  • ".$error[0]."
  • "); } $str = implode(' ', $arr); return \Response::json([ 'success' => false, 'errors' => $str ]); }

    然后直接在ajax输出相应的错误就行了

    $.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返回错误信息的方法)