gpt4 book ai didi

jquery - Coffeescript JQuery on click 仅在页面刷新时工作

转载 作者:行者123 更新时间:2023-12-03 22:59:30 25 4
gpt4 key购买 nike

我有一个使用 Coffeescript 的 Rails 应用程序。当我刷新页面或直接使用 URL 访问该页面时,以下代码将起作用。当我单击此页面的链接并尝试时,它根本不起作用。为什么会这样?

jQuery ->
console.log "Ready."
$('form').on 'click', '.add_fields', (event) ->
console.log "Click."
time = new Date().getTime()
regexp = new RegExp($(this).data('id'), 'g')
$(this).before($(this).data('fields').replace(regexp, time))
event.preventDefault()

重新加载后,我会在适当的时候做好准备并单击,并且它可以工作。从另一个页面点击后,我什么也没得到。我还从 chrome 收到了这个弃用警告,我不知道如何修复它,因为它来自 JQuery 本身:

event.returnValue is deprecated. Please use the standard event.preventDefault() instead.
jquery.js?body=1:5375

仅当上面的代码不起作用时才会出现该错误。 chrome 会阻止它吗?我正在使用jquery-rails (3.0.4)

最佳答案

所以事实证明是涡轮链接导致了这个问题。感谢 davidburber 指出了这一点。这是我修复它的方法(来自 Rails 4: how to use $(document).ready() with turbo-links )

ready = ->
$('form').on 'click', '.remove_fields', (event) ->
$(this).prev('input[type=hidden]').val('1')
$(this).closest('fieldset').hide()
event.preventDefault()


$(document).ready(ready)
$(document).on('page:load', ready)

关于jquery - Coffeescript JQuery on click 仅在页面刷新时工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20252530/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com