所以我正在关注Twitter Bootstrap文档,并尝试实现一个简单的下拉列表<a>
链接,其中包含我.navbar
中引用的一些额外属性(参见http://getbootstrap.com/components/#navbar-default)
文档中的行是:
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Dropdown <span class="caret"></span></a>
我在Rails中翻译为:
=link_to who_we_are_path, class:'dropdown-toggle', role:'button', 'aria-expanded' =>'false', data:{toggle: 'dropdown'} do
Who We Are
%span.caret
生成以下HTML:
<a aria-expanded="false" class="dropdown=toggle" data-toggle="dropdown" href="/who_we_are" role"button">
"Who We Are"
<span class="caret"></span>
</a>
看起来完全有效。但是,当我单击DOM中的文本"Who We Are"
时,它实际上并没有转到/who_we_are
路径,但是当我将鼠标悬停在我在浏览器左下角看到的文本时见0.0.0.0:3000/who_we_are
。
答案 0 :(得分:1)
那是因为,下拉列表的作用是加载菜单项,Bootstrap会阻止下拉列表的默认值并显示菜单。您应该在菜单中添加链接,或者必须覆盖Bootstraps默认值。 见http://getbootstrap.com/components/#dropdowns
试试这个
%div.dropdown
=link_to "#", class:'dropdown-toggle', role:'button', 'aria-expanded' =>'false', data:{toggle: 'dropdown'} do
Load Menu
%span.caret
%ul.dropdown-menu{role:"menu"}
%li=link_to "Who We Are", who_we_are_path