我正在使用twitter bootstrap打开模态窗口而不使用JavaScript:
在我的www.domain.com/item/1中
<a data-toggle="modal" class="btn btn-custom" data-target="#myModal" >Add to list</a>
这会触发以下模式:
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">Add to list</h3>
</div>
<div class="modal-body">
<table>
<% @my_lists.each do |list| %>
<tr>
<td><%= list.name %></td>
<td>
<% if Listing.exists?(:item_id => @item.id, :list_id => list.id) %>
<i class="icon-check"></i>
<% else %>
<%= link_to listing_list_path(:item =>@item.id, :list=> list.id) do %>
<i class="icon-check-empty"></i>
<% end %>
<% end %>
</td>
</tr>
<% end %>
</table>
</div>
</div>
在我的控制器中:
def listing
@item = Item.find(params[:item])
@list = List.find(params[:list])
@list.add_item(@item)
redirect_to [:back]
end
当我点击列出该项目时,它会被正确列出,但页面会返回
www.domain.com/item/1
关闭模态窗口。我希望它保持模态开放。我已经尝试重定向到www.domain.com/item/1#myModal,但这不起作用。
我正在使用支持Turbolinks的rails4。
由于
答案 0 :(得分:0)
可能是因为您没有阻止锚标记的默认行为。
尝试添加此JavaScript以查看其是否有效
$('a[data-toggle=modal]').click (e) -> e.preventDefault()