如何在使用location.reload()重新加载后重定向页面?

时间:2016-01-06 06:40:01

标签: php jquery ajax forms laravel

我有一个视图,可以显示创建/编辑记录的表单,如下所示:

创建

<form action="http://localhost:8000/academics" method="post" class="form-horizontal" id = "add_academic_form" role="form">

修改

<form action="http://localhost:8000/academics/1" method="put" class="form-horizontal" id = "edit_academic_form" role="form">

当用户首次访问该页面时,如果没有记录,则显示创建表单。

用户点击“下一步”按钮后,会使用ajax提交表单并重定向到下一页。进入下一页后,如果用户点击“上一个按钮”,他将重定向回到上一页,现在由于有记录,编辑表单会显示填充刚刚创建的资源。

如果我相信用户使用提供的不同按钮(下一个和上一个),但如果用户首次访问该页面,则成为问题,单击创建记录旁边的,然后从下一页点击浏览器的后退按钮再次单击下一步,多次插入记录。 我该如何解决这个问题?

我尝试了一种似乎不起作用的方法:

function tough_guy(){
    location.reload()
    window.location.href = data.redirect
}
  • ajax成功后,重新加载页面(以便发生表单切换),然后重定向到下一页。它只重定向,但不会先重新加载。

3 个答案:

答案 0 :(得分:1)

头(&#34;位置:home.php&#34);

而不是家里把你想要去的文件位置!!它对我有用

答案 1 :(得分:0)

无法发表评论,因此发布为答案,我无法完全理解您的问题,但我希望以下内容有所帮助。

尝试使用标题

header('Location: http://yourpage.com/yourphp.php');

来源:Prevent resubmit form after click "back" button

答案 2 :(得分:0)

使用History api删除状态或用相应的状态替换状态。这将避免确切的问题

https://developer.mozilla.org/en/docs/Web/API/History