在PHP / Javascript中调用浏览器后退按钮

时间:2013-03-07 21:34:28

标签: php javascript

我有一个表单会将用户发送到另一个表单,因为他们没有完成它以返回表单并完成任何错过的内容。现在,除非用户按下浏览器后退按钮,否则页面会被新加载,这意味着任何数据都会丢失。

当他们回到上一页时,他们已经填写的任何内容都应该保持不变。

我有以下两页:

第1页:

<?PHP

echo "<a href='page2.php'>NEXT</a>";
echo "<input type=text size=25 name=txt />";
?>

第2页:

<?php
$refer = $_SERVER['HTTP_REFERER'];
$lastlink = "<a href='$refer'>BACK</a>";

echo $lastlink;
?>

在第二页,如果我单击BACK返回到第1页,第1页中输入的任何内容都将丢失,我不想要。 如何在不使用Javascript的情况下解决它?用Javascript? 我知道在javascript中我可以使用

<a href="javascript:history.go(-1);">BACK</a>

但还有另一种方法吗?

3 个答案:

答案 0 :(得分:2)

看看html5 history api。历史api + ajax是伟大的组合

答案 1 :(得分:2)

您还可以使用会话在提交时存储$_POST,并检查它是否在第一个表单的页面加载时设置。

答案 2 :(得分:1)

我通常满意:

history.back(-1);

使用服务器端逻辑发送回上一页并不是一个好方法,所以我会鼓励它。