嘿我在rails应用程序中单击“后退”按钮时调用history.back()。但没有任何反应。浏览器中有历史记录 - 按下浏览器的后退按钮会将我带回正确的页面。
但是,如果我使用history.go(-2),页面会正确返回。那么为什么我要告诉javascript返回两页而不是一页呢?
任何想法如何调试?
我在FF和Safari中试过这个。
谢谢!
- 其他信息:
好的,我玩了一些,这有效:
<a href='javascript:' onclick='history.back();'>
最初,代码是:
<a href='#' onclick='history.back();'>
有什么区别? (注意,之前曾经使用过,有些东西已经改变,这使得后一个链接不起作用)
答案 0 :(得分:11)
你尝试过添加return false吗?所以:
<a href='#' onclick='history.go(-1);return false;'>
答案 1 :(得分:8)
如果您使用link_to_function
,则会自动将return false
添加到结尾。
<%= link_to_function "Go back", "history.back()" %>
答案 2 :(得分:2)
我建议使用<%= link_to :back %>
。在此处阅读更多内容:http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#M002142