我正在使用表单对页面进行“评分”。这种形式将数据“发布”到其他地方的PHP脚本。我只是想在表单处理后显示一个链接,这会将用户带回上一页。我可以在我的php脚本中使用javascript来做到这一点吗?返回上一页
GF
我正在使用表单对页面进行“评分”。这种形式将数据“发布”到其他地方的PHP脚本。我只是想在表单处理后显示一个链接,这会将用户带回上一页。我可以在我的php脚本中使用javascript来做到这一点吗?返回上一页
GF
您可以使用一个链接来调用history.go(-1)
在Javascript中,基本上是等效于单击后退按钮。然而,理想情况下,最好是创建一个链接回到用户发布到表单的URL - 这样,历史的正确“流”就会被保留下来,用户不会理解为什么他们有东西点击“转发”,其实只是再次提交表单。
如果您的网络服务器正确redirects您发布了一个新的页面后,浏览器上的常规“后退”按钮将工作。或者javascript中的“history.go(-1)”。这将产生一个填写表格。
但是,如果服务器只是返回新的内容而没有重定向 - 那么history.go(-1)不会帮助你。那时你已经失去了你的形式。
如果您只是想回到前一个网址 - 只需链接到A HREF标记。这会向你显示一个空的表单。
无论Web服务器如何,PHP都可以生成重定向。 – 2010-03-30 20:51:03
确实如此,但PHP在服务器上运行。我正在谈论客户端服务器,而不是在服务器上运行的软件。 – drozzy 2010-03-30 20:52:24
取决于你想要做什么。你可以用这样的东西:
echo "<a href=\"javascript:history.go(-1)\">GO BACK</a>";
这是最简单的选择。另一张海报是正确的,有一个适当的历史流,但这是你的一个例子。
刚刚编辑,orig版本没有缩进,看起来没有任何东西。 ;)
@dscher完美的答案兄弟,我正在寻找这样的事情,幸好找到了你的答案。 – V15HM4Y 2013-04-16 06:38:49
您明确要求JS的解决方案,但在事件有人访问你的形式与JS禁用的PHP备份总是好的:
加载窗体时抢一样$previous = $_SERVER['HTTP_REFERER'];
通过一些以前的页面地址,然后在您的表单中将其设置为<input type="hidden" value="$previous" />
。当您使用脚本处理表单时,您可以抓住该值并将其粘贴到header("Location:___")
中,或直接将地址粘贴到链接中,以便将它们发送回来。
没有JS,非常简单,您可以将它组织起来所以只有当客户端没有启用JS时才能处理它。
HTTP_REFERRER是否容易受到注入攻击?它似乎是。我喜欢它不依赖于JS,但寻找有效的URL似乎很麻烦。 JS版本对我来说更加安全。 – blindsnowmobile 2017-03-30 03:59:32
试试这个:
$previous = "javascript:history.go(-1)";
if(isset($_SERVER['HTTP_REFERER'])) {
$previous = $_SERVER['HTTP_REFERER'];
}
在HTML
:
<a href="<?= $previous ?>">Back</a>
的JavaScript代码是初始化作为后备的HTTP_REFERER
变量有时无法正常工作。
我其实更喜欢你的答案!此解决方案将重定向,而不会弹出通知,提示“表单重新提交”或任何情况。 +1 – 2015-04-17 19:35:37
像这样:
<?php
if (isset($_SERVER["HTTP_REFERER"])) {
header("Location: " . $_SERVER["HTTP_REFERER"]);
}
?>
我们可以在我们的网页上可以采取浏览器窗口前一页使用HTML代码显示后退按钮。此页面将有一个按钮或一个链接,通过点击它,浏览器将返回到上一页。这可以通过使用html或在客户端使用JavaScript来完成。
这里是这个按钮
<INPUT TYPE="button" VALUE="Back" onClick="history.go(-1);">
使用JavaScript
我们可以使用JavaScript来创建一个链接到带我们回到以前的或历史页面的代码。以下是使用客户端JavaScript移回浏览器的代码。
<a href = "javascript:history.back()">Back to previous page</a>
我想按钮onclick =“history.back();”是解决问题的一种方法。但在以下情况下可能无法正常工作:
1.如果页面被刷新或重新加载。 2.如果用户在新页面中打开链接。
为了解决这些问题,如果您知道必须返回哪个页面,可以使用以下代码。例如。如果您在一个页面上没有链接,并且要使用后退按钮返回到该页面。
< input type =“button”onclick =“document.location.href ='filename';”值= “返回” NAME = “按钮” 类= “BTN”>
也许迟到了这个答案,但只是在纯HTML就可以送花儿给人使用
./
<a href="./">Return</a>
如何使用一个链接来调用一段JavaScript代码? – 2010-03-30 20:50:20
'link text here...' – Amber 2013-05-06 14:25:45
link text here...在用户通过清除缓存清除历史记录时不起作用... – user1400915 2013-10-27 13:43:25