Jquery / Datepicker работает локально, но не в производстве (heroku)

0

Сообщение об ошибке javascript, которое я вижу в браузере, говорит:

"ReferenceError: Can't find variable $" on application-ccd035fs...... .js:1"

Однако он работает нормально. Основываясь на ошибке, я представляю, что она просто не распознает синтаксис jQuery. Не знаете, как это исправить. Помощь будет очень признательна!

My application.js выглядит следующим образом:

//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require_tree .

$(document).ready(function(){
    $('#showdate').datepicker({date_format: "dd/mm/yyyy", altField: '#mile_date', altFormat: 'yy-mm-dd'});
 });

В моем файле gem есть драгоценный камень:

'jquery-rails', '~> 2.3.0'

В моем макете есть следующее:

<%= javascript_include_tag "application" %>

Соответствующий код формы выглядит следующим образом:

<div class="field">
    <%= f.label :date, "Date:" %><br />
    <%= f.text_field :date, :id => "showdate" %>
 </div>
    <%= f.hidden_field :date, :id => "mile_date" %>
Теги:
datepicker

1 ответ

1

Вероятно, лучше не помещать код в application.js, как указано этой строкой в самом файле.

// It not advisable to add code directly here, but if you do, it'll appear at the bottom of the
// the compiled file.

попробуйте это на ваш взгляд

<div class="field">
    <%= f.label :date, "Date:" %><br />
    <%= f.text_field :date, :class => "datepicker" %>
    <%= f.hidden_field :date %>
</div>

затем вызовите это из coffescript в другом файле (это позволит вам создать столько фиников, сколько захотите, просто добавив класс datepicker в элемент ввода в любом месте вашего приложения)

$ ->
  $("input.datepicker").each (i) ->
    $(this).datepicker
    altFormat: "yy-mm-dd"
    dateFormat: "dd/mm/yy"
    altField: $(this).next()

Также вы не отметили, что в вашем Gemfile есть jquery-ui-rails но если вы этого не сделаете, это также может быть частью проблемы.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню