Bootstrap Togglable标签栏

时间:2013-06-13 16:06:47

标签: ruby-on-rails twitter-bootstrap coffeescript

我想在Rails应用程序中使用Twitter的Bootstrap中的Togglable Tabs,但我无法使其正常工作。

这是我的 app / views / pages / home.html.erb

<ul class="nav nav-tabs" id="dashboard_products">
  <li class="active"><a href="#owned_products"> 1 </a></li>
  <li><a href="#borrowed_products"> 2 </a></li>
  <li><a href="#given_products" > 3 </a></li>
  <li><a href="#requested_products"> 4 </a></li>
</ul>
<div class="tab-content">
  <div class="tab-pane active" id="owned_products"> 1 </div>
  <div class="tab-pane" id="borrowed_products" > 2 </div>
  <div class="tab-pane" id="given_products" > 3 </div>
  <div class="tab-pane" id="requested_products" > 4 </div>
</div>

这是我的 app / assets / javascripts / pages.js.coffee

$ ->
  $('#dashboard_products a').click = (e) ->
    e.preventDefault() 
    $(this).tab('show')

在这里我的 app / assets / javascripts / application.js

//= require jquery
//= require jquery_ujs
//= require bootstrap
//= require turbolinks
//= require_tree .

我哪里失败了?

3 个答案:

答案 0 :(得分:11)

您缺少data-toggle标记。

以下是一个例子:

<div class="container-fluid">
    <div class="row-fluid">
        <div class="span8 well">
            <ul class="nav nav-tabs">
                <li class="active"> <a href="#home" data-target="#home" data-toggle="tab">Home</a>

                </li>
                <li><a href="#profile" data-target="#profile" data-toggle="tab">Profile</a>

                </li>
            </ul>
            <div class="tab-content">
                <div class="tab-pane active fade in" id="home">home tab content</div>
                <div class="tab-pane" id="profile">profile tab content</div>
            </div>
        </div>
    </div>
</div>

DEMO

答案 1 :(得分:1)

检查是否包含了bootstrap js ...并在包含bootstrap js后检查是否包含了coffee script文件。和咖啡脚本包括也必须在你的HTML之后。因为dom必须在init标签之前创建元素。

答案 2 :(得分:0)

这里的例子

http://getbootstrap.com/javascript/#tabs

没有数据目标属性。

<li role="presentation" class="active"><a href="#home" aria-controls="home" role="tab" data-toggle="tab" data-target="home">Home</a></li>

但是当我添加它时

<li role="presentation" class="active"><a href="#home" aria-controls="home" role="tab" data-toggle="tab">Home</a></li>

这一切都奏效了。