0

Rails 3.0 アプリで Twitter ブートストラップをセットアップし、3 つのタブを持つページ (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 番目のタブに移動します)...」というボタンがあるとします。プライバシー設定(#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に変更しても、 2 番目のタブに移動しないでください。

追加の JS が不足していますか? どうぞよろしくお願いいたします。また、回答は Haml や Rails に準拠している必要はありません...私はそれらを書き直すことができます。私はガイダンスとアドバイスを求めているだけです。ありがとうございました!

4

1 に答える 1

0

このコードは問題を解決したようです:

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