我是 Ruby on Rails 和 Javascript 的新手,所以不知道如何继续。我有一个应用程序,它使用了一些时髦的 JQuery UI 组件,特别是 Datepicker 和 Tabs。它们都可以工作,但只有一次我至少刷新了一次页面;在第一次加载时,我只是得到 html,就好像 jquery javascript 文件不存在于 app/assets/javascripts 中一样。
有任何想法吗?第一次加载失败,如何自动刷新页面?
应用程序.js:
$(function() {
$("#event_start_time").datepicker();
$("#tabs").tabs();
});
view.html.erb:
<div id="tabs">
<ul>
<li><a href="#students"><span>Students</span></a></li>
<li><a href="#teachers"><span>Teachers</span></a></li>
</ul>
<div id="students">
<%= render 'sessions/student_login_details' %>
</div>
<div id="organisations">
<%= render 'sessions/teacher_login_details' %>
</div>
</div>
应用程序.html.erb:
<head>
<%= yield :scripts %>
<%= stylesheet_link_tag "application", media: "all", "data-turbolinks-track" => true %>
<%= javascript_include_tag "application", "data-turbolinks-track" => true %>
</head>
<body>
<%= render 'layouts/header' %>
<div class="container">
<%= yield %>
<%= render 'layouts/footer' %>
</div>
</body>
编辑:好的,解决了。那是台球室里的 Turbolinks,里面有铅管。这个 gem https://github.com/kossnocorp/jquery.turbolinks有助于解释为什么它偶尔会导致 Javascripts 无法正常运行。谢谢大家!