2

我是 RoR 的初学者,并试图在我的应用程序中启用 pickadate.js。

在匹配控制器的文件app/assets/javascripts/calc_date.js.coffee 中,我输入了:

$ ->
  $(".date").pickadate()

在部分表单app/views/calc_date/_form.html.haml中,我输入了:

= form_tag('/calc_date/calc') do
  %div
    %b Please, select date:
    = date_field_tag 'date', @date, id: "date", class: "date"
    = submit_tag 'Calculate'

当我单击输入字段时,什么也没有发生。我希望会出现一个日历小部件,但它不起作用。

在 application.js 中:

//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require pickadate/picker
//= require pickadate/picker.date
//= require pickadate/translations/ru_RU
//= require_tree .

在 application.css 中:

*= require pickadate/default
*= require pickadate/default.date
*= require_tree .
*= require_self

我尝试了 jquery-ui-date 并且它有效。我对 pickadate.js 使用相同的方式,但没有得到任何反应。

在终端窗口中,我可以看到这样的行:

Started GET "/assets/pickadate/picker.js?body=1" for 127.0.0.1 at 2015-03-12 15:26:44 +0300

Started GET "/assets/pickadate/picker.date.js?body=1" for 127.0.0.1 at 2015-03-12 15:26:44 +0300

我的错误是什么,或者我错过了什么?

谢谢你。

4

2 回答 2

1

我知道这有点老了,但我刚刚遇到了一个类似的问题,我认为这与您似乎遇到的问题相同。

我的情况有点失败:我正在处理客户的表单并且正在运行pickadate,它正在运行,然后我意识到每次我加载一个新页面时它都不会启动......刷新页面,再次工作.

出了什么问题...... TURBO LINKS......我的上帝,那东西让我发疯。我总是把它拿出来,但它就在那里,我也可以在你的应用程序中看到它。

除此之外,您的代码似乎很好,应该可以工作。

于 2015-12-09T11:53:37.563 回答
0

Rails 资产管道会忽略目录中的第一个文件夹assets。试试这个:

在 application.js 中:

//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require picker
//= require picker.date
//= require translations/ru_RU
//= require_tree .

在 application.css 中:

*= require default
*= require default.date
*= require_tree .
*= require_self
于 2015-10-15T12:03:28.750 回答