laravel中,提交表单后给出提示例如添加成功,添加失败等等

宋伯寅
2023-12-01

laravel中的表单插入,我想在表单插入成功后,可以像thinkphp一样可以有一个提示内容,上网Google,他们还是给出的方法就是

return redirect('/')->with('message', 'Message sent!');

然后在view中接收

@if(Session::has('message'))
 <div class="alert alert-info"> {{Session::get('message')}} 
 </div> 
 @endif

可行是可行,但是我总体还是觉得我想要的是thinkphp中的那种跳转效果,或者是弹出一个窗口进行跳转。所以在这个地方我就使用到了js。废话不多说,直接贴出代码,我的controller里面使用view方法传递参数。

 return view('pc.index.jump')->with([
                    'message'=>'你已经提交申请,请您耐心等待!',
                    'url' =>'/index', 
                    'jumpTime'=>2,
                ]);

在index中建立jump页面,这个就是即将要跳转的页面,在这个页面中写入js,url就是跳转的地方,jumpTime跳转的时间,倒计时。
然后就是jump页面:

 <div id="applyFor" style="text-align: center; width: 500px; margin: 100px auto;">{{$message}},将在<span class="loginTime" style="color: red">{{$jumpTime}}</span>秒后跳转至<a href="{{$url}}" style="color: red">首页</a>页面</div>

然后写入js:

 <script type="text/javascript">
        $(function(){
            var url = "{{$url}}"
            var loginTime = parseInt($('.loginTime').text());
            var time = setInterval(function(){
                loginTime = loginTime-1;
                $('.loginTime').text(loginTime);
                if(loginTime==0){
                    clearInterval(time);
                    window.location.href=url;
                }
            },1000);
        })
    </script>

效果完毕!

 类似资料: