Rails 4 Jquery 日期选择器没有显示

Rails 4 Jquery datepicker doesn't show up

my jquery ui datepicker 在 运行 rails 应用程序之后直接打开 link (http://localhost:3000/expenses/dateForm) 时工作​​正常。但是,当我在主页 'Reports button' 上为视图 ('/expenses/dateForm') 提供 link 并在主页上单击“报告”按钮时打开 link 时,日期选择器不显示向上。

下面是视图 'dateForm' :

<%= form_tag({:controller => 'expenses', :action => 'dateFilter'}, :class =>"datepicker") do %>
<%= collection_select Category, :id, Category.all, :id, :name, :include_blank => "Please select category..." %>
<%= label_tag("Start Date") %> <br />
<%= text_field_tag(:start_date) %>
<%= label_tag("End Date") %> <br />
<%= text_field_tag(:end_date) %>
<%= submit_tag "Submit" %>
<% end %> 

这里是 home.html.erb :

<section class="form-button-item"> 
  <%= link_to "Reports", '/expenses/dateForm', class: "btn btn-lg btn-block btn-primary"%>
</section>

下面是我的 application.js :

$(document).ready(function() {

$("#start_date").datepicker({dateFormat: "yy-mm-dd"});
$("#end_date").datepicker({dateFormat: "yy-mm-dd"});

});

请提出解决此问题的建议。

In rails 4 turbolinks 默认添加,turbolink 使应用程序更快地请求相同的 resources/assets 而无需在页面加载时重新编译。

这意味着当您直接将 url 粘贴到浏览器时,它会重新加载整个页面,但如果您单击 link,它将无法重新加载,资产也不会重新加载。所以 dtepicker 似乎没有初始化,它不会工作。 为您替换此代码:

<section class="form-button-item"> 
  <%= link_to "Reports", '/expenses/dateForm', class: "btn btn-lg btn-block btn-primary", data: { no_turbolink: true }%>
</section>

您也可以从您的应用程序中禁用 turbolink: http://blog.flightswithfriends.com/post/53943440505/how-to-disable-turbolinks-in-rails-4

有关 turbo link 的更多详细信息:https://github.com/rails/turbolinks