0

我在 Rails 3.0 应用程序上设置了 twitter 引导程序,并有一个包含三个选项卡的页面 (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下的数据)。

注意:即使我在编辑页面上,并将我的 URL 从:http://localhost:3000/users/1/edit 更改http://localhost:3000/users/1/edit#2,它确实如此不要带我去第二个标签。

我是否缺少任何其他 JS?您的帮助将不胜感激。此外,您的答案不必符合 Haml 或 Rails 标准......我可以重新编写它们,我只是寻求一些指导和建议。谢谢!

4

1 回答 1

0

这段代码似乎解决了这个问题:

:javascript
  $(document).ready(function(){
    $('a[href="' + window.location.hash + '"]').click()
  });
于 2012-04-06T14:31:17.193 回答