js不能用于ajax在Rails中出现的元素

时间:2016-09-30 17:10:15

标签: ruby-on-rails ajax coffeescript ruby-on-rails-5 turbolinks

例如,我有一个带有ajax请求的表单字段,它有类can_be_deleted

<div class="form-group">
  <%= f.text_field :name %>
  <%= f.hidden_field :_destroy %>
  <span class="fa fa-close can_be_deleted"></span>
</div>

与此同时,我有一些已经存在的页面加载元素,它们也有类can_be_deleted

<div class="form-group article_tag">
  <%= f.object.name %>
  <%= f.hidden_field :slug %>
  <%= f.hidden_field :name %>
  <%= f.hidden_field :_destroy %>
  <span class="fa fa-close can_be_deleted"></span>
</div>

当按下具有此类的元素时绑定的coffescript适用于由ajax创建的所有元素EXCEPT。

jQuery ($) ->
  $(document).on "turbolinks:load", ->    
    $(".can_be_deleted").click ->
      console.log("clicked")

如何使其与所有元素一起使用?奇怪的情况。

1 个答案:

答案 0 :(得分:1)

您可以使用ajaxComplete事件,请尝试以下操作:

$(document).on "turbolinks:load ajaxComplete", ->   
而不是这个:

$(document).on "turbolinks:load", ->