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 を実行しています。それは機能していましたが、新しいページをロードするたびに開始されないことに気付きました...ページを更新すると、再び機能します.

何が問題だったんだ……ターボリンク……なんてこった、あれは私を狂わせる。私はいつもそれを取り出しますが、あなたのアプリでも見ることができるように、そこにありました.

それとは別に、あなたのコードは問題ないようで、動作するはずです。

于 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 に答える