【发布时间】:2015-04-09 03:25:27
【问题描述】:
我想根据这个例子在rails中制作一个导航栏: http://getbootstrap.com/javascript/#tabs
<div role="tabpanel">
<!-- Nav tabs -->
<ul class="nav nav-tabs" role="tablist">
<li role="presentation" class="active"><a href="#home" aria-controls="home" role="tab" data-toggle="tab">Home</a></li>
<li role="presentation"><a href="#profile" aria-controls="profile" role="tab" data-toggle="tab">Profile</a></li>
<li role="presentation"><a href="#messages" aria-controls="messages" role="tab" data-toggle="tab">Messages</a></li>
<li role="presentation"><a href="#settings" aria-controls="settings" role="tab" data-toggle="tab">Settings</a></li>
</ul>
<!-- Tab panes -->
<div class="tab-content">
<div role="tabpanel" class="tab-pane active" id="home">...</div>
<div role="tabpanel" class="tab-pane" id="profile">...</div>
<div role="tabpanel" class="tab-pane" id="messages">...</div>
<div role="tabpanel" class="tab-pane" id="settings">...</div>
</div>
</div>
但是我想使用 link_to 方法来创建一个链接。当我如下重写第一个链接时没有问题:
<li role="presentation" class="active"><%= link_to "Home", "#home", 'aria-controls'=>"home", role: "tab", data:{toggle: "tab"} %> </li>
但是当我将这一行写成如下:
<li role="presentation" class="active"><%= link_to "Home", root_path, 'aria-controls'=>"home", role: "tab", data:{toggle: "tab"} %> </li>
主页选项卡不再起作用,我在 Google chrome 中收到以下错误: 未捕获的错误:语法错误,无法识别的表达式:/
知道我做错了什么吗?
【问题讨论】:
-
我猜 JavaScript Bootstrap 使用的是专门针对
#home链接的。<a href="#home" aria-controls="home" role="tab" data-toggle="tab">Home</a>不是真正的链接,它只是触发一个 JavaScript 函数,所以我认为你不应该将它与link_to辅助方法交换。
标签: ruby-on-rails link-to bootstrap-sass