2017-06-19 6 views
0

Ich habe einen Jquery Datepicker in einem meiner Formulare. Wenn Sie in das Textfeld klicken, wird es nur angezeigt, wenn Sie die Seite aktualisieren, während Sie das Formular bearbeiten. Wie kann ich es bei jedem Klick in das Feld zur Arbeit bringen?Jquery Datepicker öffnet sich erst nach dem Reload der Seite

Der Kaffee-Skript:

jQuery -> 
$(document).ready -> 
    $("#datepicker").datepicker({ 
    dateFormat: 'yy-mm-dd' 
}); 

Ich habe auch versucht den Code aus dem Kalender Railscast:

jQuery -> 
    $("#datepicker").datepicker({ 
    dateFormat: 'yy-mm-dd' 
}); 

Meine Form:

<%= f.text_field :deadline, id: "datepicker", placeholder: 'Deadline' %> 

application.js:

//= require jquery 
//= require jquery_ujs 
//= require jquery-ui/widgets/datepicker 
//= require turbolinks 
//= require_tree . 

Application.scss:

/* 
*= require jquery-ui/datepicker 
*= require_tree . 
*= require_self 
*/ 

Antwort

1

Dies ist ein turbolinks Ausstellung, die Verwendung turbolinks: Last statt.

document.addEventListener("turbolinks:load", function() { 
    $("#datepicker").datepicker({ 
     dateFormat: 'yy-mm-dd' 
    }); 
}) 

See turbolinks docs

+0

ich '' 'Syntaxerror: [stdin]: 4: 46: reserviert Wort‚function'''' – ddonche

+1

Coffeescript Ausgabe auf dem vorherigen Kommentar. Ich habe es funktioniert, indem ich '' 'document.addEventListener" turbolinks: load ", -> $ (" #datepicker ") .datepicker dateFormat: 'yy-mm-dd'''' – ddonche

Verwandte Themen