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; 500px; margin: 100px auto;"> {{$message}},将在 <span class="loginTime" style="color: red">{{$jumpTime}}</span>秒后跳转至 <a href="{{$url}}" style="color: red">首页</a>页面 </div> <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>
效果完毕!
如果想跳转上一个页面
//返回当前页面的地址 echo url()->current(); //返回当前页面的完整路径 echo url()->full(); //返回前一个页面的地址 echo url()->previous();
所以,如果我们的view中想定义一个返回按钮,可以这样定义:
<!-- 注意我们使用的是blade template (my-view.blade.php) --> <a href="{{ url()->previous() }}" class="btn">返回</a>
还可以再后台这样定义:(msginfojump可以用上面jump页面的信息)
$msg = [ 'message'=>'你已经修改失败!', 'url' =>url()->previous(),//注意这里是重点 'jumpTime'=>5, ]; return view('/comm/msginfojump')->with($msg);
转:http://blog.csdn.net/u011020900/article/details/52368332