Javascript jquery$(文档)。提交后未调用就绪
在RubyonRails4应用程序中,我有一个使用jQueryDatePicker的表单(来自Javascript jquery$(文档)。提交后未调用就绪,javascript,jquery,ruby-on-rails,ruby,turbolinks,Javascript,Jquery,Ruby On Rails,Ruby,Turbolinks,在RubyonRails4应用程序中,我有一个使用jQueryDatePicker的表单(来自jQueryUIRailsGem) 所以我需要打电话 $('.datepicker').datepicker(); 每次呈现我的表单时 我从这个开始(在我特定于控制器的.js.coffee文件中) 在我遇到Turbolinks问题并不得不改为: ready = -> $('.datepicker').datepicker(); $(document).ready = ready $(d
jQueryUIRails
Gem)
所以我需要打电话
$('.datepicker').datepicker();
每次呈现我的表单时
我从这个开始(在我特定于控制器的.js.coffee
文件中)
在我遇到Turbolinks问题并不得不改为:
ready = ->
$('.datepicker').datepicker();
$(document).ready = ready
$(document).on 'page:change', ready
但是我在点击提交按钮后仍然有问题,并且有一个(或多个)错误,因此表单被重新呈现,但没有调用任何处理程序(document.ready
和document.on page:change
)
我已将此代码放入application.js
$(function(){
console.log("application.js -> ready")
})
我可以在控制台中看到它正在被调用,但是在特定于控制器的.js文件中定义的函数没有被调用
所有文件似乎都已正确加载(它们在
部分有一行
;并出现在Chrome的Sources选项卡中。我不清楚上面的语法,但从javascript/jquery的角度来看:
$(document).ready = ready
这不会注册一个函数来调用ready事件,它会关闭您应该调用的ready函数来注册侦听器。我不清楚上面的语法,但从javascript/jquery的角度来看,
$(文档).ready=ready
没有注册一个函数来调用ready事件,它会重击您应该调用的ready
函数来注册一个侦听器。@MikeEdwards,请将您的评论作为一个响应,这样我就可以将其作为答案进行检查了!我需要删除=
符号…只是为了清楚起见,将我的行更改为:$(文档)。ready ready
解决了我的问题。
$(document).ready = ready