我在Rails 3.0应用程序上设置了twitter bootstrap,并且有一个带有三个选项卡的页面(edit.html.haml)。这是我的代码(我正在使用haml):
.tabbable
%ul.nav.nav-tabs
%li.active
%a{"data-toggle" => "tab", :href => "#1"}
%i.icon-pencil
Edit Profile
%li
%a{"data-toggle" => "tab", :href => "#2"}
%i.icon-lock
Privacy Preferences
%li
%a{"data-toggle" => "tab", :href => "#3"}
%i.icon-cogs
Site Preferences
.well-two
.tab-content
#1.tab-pane.active
%p ...
#2.tab-pane
%p ...
#3.tab-pane
%p ...
当我在编辑页面上时,标签工作正常(我可以在它们之间移动,并且它们应该响应);但是,假设我在显示页面(show.html.haml)并且有一个按钮说:点击此处更改您的隐私设置(即:转到编辑页面上的第二个标签页)...什么代码是否有必要链接到隐私设置(#2)内容?
我有以下代码:
=link_to "#{raw('<i class="icon-plus-sign icon-large"></i>')} Privacy Settings".html_safe, edit_path(current_profile, :anchor => "2")
但它不起作用......它将我带到编辑页面,但不加载隐私设置数据(即#2下的数据)。
注意:即使我在修改页面上,并将我的网址从http://localhost:3000/users/1/edit更改为http://localhost:3000/users/1/edit#2,也不会将我带到第二个标签页。
我错过了任何额外的JS吗?非常感谢您的帮助。此外,您的答案不一定要符合Haml或Rails ......我可以重新编写它们,我只是寻求一些指导和建议。谢谢!
答案 0 :(得分:0)
这段代码似乎解决了这个问题:
:javascript
$(document).ready(function(){
$('a[href="' + window.location.hash + '"]').click()
});