我试图美化按下导轨时浏览器弹出的确认对话框'使用bootbox删除链接,因此我修改了删除链接的代码,如下所示
<%= link_to '#', :class => "btn btn-danger delete-link", 'data-src' => item_path(@item), :method => :delete do %>
<span class='fa fa-times'></span> Delete IT
<% end %>
$(document).ready(function(){
$('.delete-link[data-method="delete"]').click(function(e){
e.preventDefault();
console.log('THIS SHOULD NOT REDIRECT!');
});
});
但奇怪的是,当我按下按钮时,链接激活并删除项目!但它也会记录THIS SHOULD NOT REDIRECT!
消息!
P.S:我也试过这个
$('.delete-link[data-method="delete"]').unbind('click').click(function(e){...});
但结果仍然相同。
答案 0 :(得分:2)
尝试添加
e.stopPropagation();
所以你的代码看起来像是:
$(document).ready(function(){
$('.delete-link[data-method="delete"]').click(function(e){
e.preventDefault();
e.stopPropagation();
console.log('THIS SHOULD NOT REDIRECT!');
});
});
参考:this stack overflow question有关于这两个事件的一些额外细节。