Onclick JavaScript使浏览器返回上一页?


Answers:


446

在您的输入元素中添加

<input
    action="action"
    onclick="window.history.go(-1); return false;"
    type="submit"
    value="Cancel"
/>

52
对于我来说,这并非对所有浏览器都有效,我必须执行以下操作。<input action="action" type="button" value="Back" onclick="window.history.go(-1); return false;" />这个答案已经很老了,因此它可能是较新版本的浏览器中引入的一个问题。:)
ctrlplusb 2014年

4
这是从缓存中显示上一页还是从服务器重新加载上一页?
阿德里安

7
有什么action="action"用?它是有效的HTML吗?
ban-geoengineering

@Adrien-它的JavaScript,因此它在浏览器中运行。浏览器应重新使用缓存的页面(假设浏览器设置和页面http标头设置允许这样做)。
ToolmakerSteve

请注意,不应在生产中使用内联JS,因为:1. JS代码应放在专用且缩小的.js文件中2.应通过内容安全策略禁用内联JS以减轻XSS注入
Theophany

120
history.back()

要么

history.go(-1)

将其放在按钮onclick手柄上。它看起来应该像这样:

<input name="action" onclick="history.back()" type="submit" value="Cancel"/>

11
将其放入按钮onClick句柄
Vadim

7
您可能更清楚,就像在代码中给出答案一样
WowThatsLoud

3
浏览器对此有什么支持?
哥斯达黎加

98

对于转到上一页

第一种方法

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

第二种方法

<a href="##" onClick="history.go(-1); return false;">Go back</a> 

如果我们想退后一步,则增加

For going 2 steps back history.go(-2)
For going 3 steps back history.go(-3)
For going 4 steps back history.go(-4)
and so on.......

2
@JeromeJ这是一个链接,如果未在页面上启用(或出于任何原因)JavaScript则不执行任何操作。如果JavaScript有效,它将使浏览器返回一页。
Jeromy French

14
<input name="action" type="submit" value="Cancel" onclick="window.history.back();"/> 


12

最短的!

<button onclick="history.go(-1);">Go back</button>

http://jsfiddle.net/qXrbx/

我喜欢这样的.go(-number)方法,对于1个或多个“后退”,只有一种方法可以使用/记住/更新/搜索等。

另外,将标签用于后退按钮似乎比具有名称和类型的标签更合适...



8

简单。一条线。

<button onclick="javascript:window.history.back();">Go Back</button>

就像Wim和Malik的答案一样,只是一排。


效果很好,但是通常情况下,如果用户决定使用这样的按钮更改特定页面上的语言,则返回上一页的后退按钮将使该语言返回,而不是该页面...
MarekBernád19年

6

这是在所有当前浏览器上唯一起作用的东西:

<script>
function goBack() {
    history.go(-1);
}
</script>
<button onclick="goBack()">Go Back</button>

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.