2012-07-16 11 views
5

Próbuję użyć datepicker JQuery interfejsu użytkownika dla formularza do tworzenia zdarzenia.Jquery Datepicker Rails 3 format daty wydania

Sam formularz renderuje się dobrze, a jeśli używam normalnej szyny date_field, informacje są zapisywane bez żadnego problemu. Jednak gdy próbuję użyć datepaksu, oznacza to, że formularz nie może być pusty, nawet jeśli wybrałem datę. Zdaję sobie sprawę, że jest to spowodowane różnicą w formacie terminów używanych przez szynach i datepicker, więc próbowałem następujący kod:

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

Ale to nie wydaje się, że pracował. Data jest nadal wyświetlana w domyślnym formacie datepickera i przekazuje ten format jako parametr, co powoduje błąd. Wszelkie wskazówki będą mile widziane!

Odpowiedz

4

Miałem podobny problem kilka miesięcy temu.

Spróbuj format:

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

To działa poprawnie ze wszystkimi moimi Rails applicatons.

EDIT

także upewnić się, że typ danych kolumny, gdzie są oszczędności datę (w bazie danych) jest ustawiona jako string a nie jako date.

+0

Obawiam się, że to też nie działa. Problemem jest to, że datepicker nie zmienia format daty bez względu na to, co wydaje mi się zrobić to jeszcze renderowania na stronie jako MM-DD-YY, i przekazując je jako parametr ... – TangoKilo

+0

jaki jest typ danych używasz dla kolumny w twojej bazie danych? Należy ustawić je jako '' string' a nie dzień spełnienia wymogu – gabrielhilal

+0

używam datę, ale przypuszczam, zmieniając go na ciąg by naprawić ten problem ... – TangoKilo

2

Proszę wyjaśnić, co nie działa? Kalendarz się nie wyświetla? Spróbuj tego kodu

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

}) 

A jaki jest domyślny rodzaj formatu?

+0

Domyślnym formatem daty dla szyn jest rrrr-mm-dd, natomiast w przypadku datownika mam wartość mm-dd-rr. Zasadniczo forma zwróci błąd mówiąc, że termin ten nie może być puste, gdy próbuję użyć wyboru daty, nawet jeśli wybrałem datę – TangoKilo

+0

W chwili obecnej formą jest także pokazano, że datepicker jQuery UI nadal formatuje data w mm-dd-rrrr, więc wyraźnie nie ustawiono formatu daty. – TangoKilo

0

Odpowiedź jest przestarzały, z PostgreSQL i pole Datetime Użyłem
{format: "dd/mm/yyyy"} i to nie działa.