js 不适用于 ajax 出现在 Rails 中的元素
js not available for ajax appeared elements in Rails
例如,我有一个与 ajax 请求一起出现的表单字段,它有 class 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>
同时我有一些已经存在的元素随着页面加载出现,它们还有 class 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>
按下具有此 class 的元素时绑定的 coffescript,适用于 ajax 创建的所有元素除外。
jQuery ($) ->
$(document).on "turbolinks:load", ->
$(".can_be_deleted").click ->
console.log("clicked")
如何让它适用于所有元素?奇怪的情况。
您可以使用 ajaxComplete
事件,试试这个:
$(document).on "turbolinks:load ajaxComplete", ->
改为:
$(document).on "turbolinks:load", ->
例如,我有一个与 ajax 请求一起出现的表单字段,它有 class 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>
同时我有一些已经存在的元素随着页面加载出现,它们还有 class 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>
按下具有此 class 的元素时绑定的 coffescript,适用于 ajax 创建的所有元素除外。
jQuery ($) ->
$(document).on "turbolinks:load", ->
$(".can_be_deleted").click ->
console.log("clicked")
如何让它适用于所有元素?奇怪的情况。
您可以使用 ajaxComplete
事件,试试这个:
$(document).on "turbolinks:load ajaxComplete", ->
改为:
$(document).on "turbolinks:load", ->