2012-07-16 17 views
5

Sto cercando di utilizzare un Datepicker dell'interfaccia utente JQuery per un modulo per la creazione di un evento.Jquery Datepicker Rails 3 problema di formato data

Il modulo stesso sta funzionando correttamente e se utilizzo le normali rotaie date_field le informazioni vengono salvate senza alcun problema. Tuttavia, quando provo a usare il datepicker, si afferma che il modulo non può essere vuoto, anche se ho scelto una data. Mi rendo conto che ciò è dovuto a una differenza nel formato delle date utilizzate dalle rotaie e datepicker e, così ho provato il seguente codice:

$(function(){ 
    $("#dateField").datepicker({ 
     dateFormat: "yyyy-mm-dd" 
    }); 
}); 

Ma questo non sembra aver funzionato. La data è ancora visualizzata nel formato predefinito di datepickers e sta trasmettendo quel formato come parametro, il che si traduce in un errore. Qualsiasi suggerimento sarebbe apprezzato!

risposta

4

Ho avuto un problema simile qualche mese fa.

Prova questo formato:

$(function(){ 
$('#dateField').datepicker({ dateFormat: 'D, dd M yy' }); 
}); 

Si sta lavorando bene con tutti i miei Rails applicatons.

EDIT

assicurarsi che il tipo di dati della colonna in cui si sta salvando la data (sulla base di dati) anche è impostato come string e non come date.

+0

Ho paura che anche questo non funzioni. Il problema è che datepicker non sta cambiando il formato della data, a prescindere da ciò che mi sembra di fare, quindi è ancora il rendering sulla pagina come mm-dd-yy, e passandoli come parametro ... – TangoKilo

+0

qual è il tipo di dati che stai usando per la colonna nel tuo database? Dovresti impostarlo come 'string' e non' date' – gabrielhilal

+0

Sto usando la data, ma suppongo che cambiarlo in stringa risolverebbe il problema ... – TangoKilo

2

Si prega di chiarire cosa non funziona? Il calendario non appare? Prova questo codice

jQuery(document).ready(function($) { 
    $("#dateField").datepicker({ 
     dateFormat: "yyyy-mm-dd" 
    }); 

}) 

E qual è predefinito tipo di formato?

+0

Il formato di data predefinito per i binari è aaaa-mm-gg, mentre con datepicker credo in mm-gg-aa. In sostanza il modulo restituisce un errore che dice che la data non può essere vuota ogniqualvolta provo a usare il selettore di date, anche se ho scelto una data – TangoKilo

+0

Al momento il modulo mostra anche che l'interfaccia utente di Jquery datapicker formatta ancora il data come mm-gg-aaaa, quindi è chiaro che il formato della data non viene impostato. – TangoKilo

0

La risposta non è aggiornato, con Postgres e un campo datetime ho usato
{format: "dd/mm/yyyy"} e ha funzionato.

Problemi correlati