Ruby 在 Rails 上:jQuery 日期选择器仅在刷新页面时有效

Ruby On Rails: jQuery datepicker only works when refresh page

我遇到的问题是,当我浏览表单页面并单击文本字段上的 date_sent 时,jQuery 应该会弹出一个日期选择器。但是,一开始我什么也没得到,但是当我刷新页面时它起作用了。

我几乎可以肯定我的问题出在 turbolinks 上,因为我假设我的 JavaScript 由于 turbolinks 而无法加载。但是,我不想删除 turbolinks,因为没有它我的页面呈现速度很慢。我怎样才能完成这项工作?

application.js

//= require jquery
//= require jquery-ui/datepicker
//= require jquery_ujs
//= require bootstrap-sprockets
//= require cocoon
//= require turbolinks
//= require_tree .

application.scss

 *= require_self
 *= require jquery-ui/datepicker
 *= require_tree .
 */

@import 'bootstrap-sprockets';
@import 'bootstrap';
@import 'sites';

form.coffee

jQuery ->
    $('#send_date').datepicker()

form.html.erb

<div class="form-group" >
      <%= f.label :date_sent, class: 'control-label' %><br>
      <%= f.text_field :date_sent, id: 'send_date' %>
</div>

您尝试过 turbolinks:load 活动吗?

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

改为:

$(document).ready, ->