Turbolinks和jQuery兼容性Rails 5
问题描述:
我有一个隐藏的字段,当点击链接使用jQuery时被激活。当点击链接时,该字段只显示一秒钟,然后消失。Turbolinks和jQuery兼容性Rails 5
$('.use-different-card').on "click", ->
$(".card-on-file").hide()
$(".card-fields").removeClass("hidden")
当我删除turbolinks,jQuery似乎工作得很好。
我试过添加compatibility.coffee但我没有运气。
这是我的源代码树。
//= require jquery
//= require jquery_ujs
//= require jquery.turbolinks
//= require turbolinks
//= require compatibility
//= require_tree .
什么建议接下来要做什么?
答
你遇到的问题是你的jquery没有重新加载页面“更改”。相反的的document.ready()的包装功能,使用以下命令:
$(document).on('turbolinks:load', function() {
$('.use-different-card').on "click", ->
$(".card-on-file").hide()
$(".card-fields").removeClass("hidden")
})
更新:此外,正在要求您jquery.turbolinks Jquery.ujs后!更改您的需求订单。按照创业板文档为jquery.turbolinks您需要application.css文件,如:
//= require jquery
//= require jquery.turbolinks /*Notice this must be before jquery_ujs */
//= require jquery_ujs
一旦这个命令纠正,你可能不需要再使用turbolinks:load
通话。
我已经尝试添加以下内容,但没有运气。有什么建议么? (“。card-on-file”)。hide(“。-card-on-file”)。hide(“。card-on-file”)。 () $(“。card-fields”)。removeClass(“hidden”) –
@LauroSilva您正在使用哪个版本的Rails? – omnikron
查看答案的更新。应该解决你的问题。 – bkunzi01