Javascript Rails 4删除受模板JS影响的链接

Javascript Rails 4删除受模板JS影响的链接,javascript,jquery,ruby-on-rails,ruby-on-rails-4,ujs,Javascript,Jquery,Ruby On Rails,Ruby On Rails 4,Ujs,我正在使用rails 4和Desive。所有Desive功能均按预期工作,包括以下代码给出的注销链接: = link_to "<span class= 'fa fa-power-off'></span> Sign Out".html_safe, destroy_user_session_path, method: :delete 当我添加模板js文件的其余部分时,它会再次停止工作,因此我假设在其他文件中也会执行类似的操作。我没有删除JS的片段,而是试图了解发生了什么。我

我正在使用rails 4和Desive。所有Desive功能均按预期工作,包括以下代码给出的注销链接:

= link_to "<span class= 'fa fa-power-off'></span> Sign Out".html_safe, destroy_user_session_path, method: :delete
当我添加模板js文件的其余部分时,它会再次停止工作,因此我假设在其他文件中也会执行类似的操作。我没有删除JS的片段,而是试图了解发生了什么。我知道Rails使用它的ujs来触发一个删除请求,但是为什么上面的JS代码会阻碍Rails做它应该做的事情呢


另外,我对JS不太流利,因此对于非常熟悉JS的人来说,这可能很简单。

我认为问题在于e.stopPropagation;js代码中的行。这些可能不是真正需要的。但是,它可能取决于下拉菜单中的其他链接类型。试着去掉这两条线,检查是否一切正常

 $('.dropdown-menu').on('click', function(e) {

     e.stopPropagation();
     var Target  = $(e.target);
     var TargetGroup = Target.parents('.btn-group');
     var SiblingGroup = Target.parents('.dropdown-menu').find('.btn-group');

     // closes all open multiselect menus. Creates Toggle like functionality
     if (Target.hasClass('multiselect') || Target.parent().hasClass('multiselect')) {
       SiblingGroup.removeClass('open');
       TargetGroup.addClass('open');
     }
     else { SiblingGroup.removeClass('open'); }
      e.stopPropagation();
      var Target  = $(e.target);
      var TargetGroup = Target.parents('.btn-group');
      var SiblingGroup = Target.parents('.dropdown-menu').find('.btn-group');
  });