Manuelle Validierung des Datumseintrags für die jQuery UI Datepicker maxDate Option

8

Ich habe jQuery datepicker auf einer Seite, die manuelle Eingabe des Datums erlauben muss, muss aber auch überprüfen, dass das Datum nicht mehr als einen Tag voraus ist. Das Picker-Steuerelement wurde über das maxDate begrenzt, aber wenn Sie das Datum manuell eingeben, können Sie ein Datum eingeben, das mehr als einen Tag voraus ist. Wie hört man das auf? Hier ist, was ich bisher habe:

%Vor%     
Sam Carleton 27.06.2012, 14:37
quelle

4 Antworten

6

Nun, die obige Antwort ist richtig, aber es validiert nicht das Formular, der Benutzer wird immer noch in der Lage sein, das Formular zu senden,

Ich habe einige Nachforschungen angestellt, konnte aber ny nicht finden, schließlich habe ich diese Funktion geschrieben, die gut funktioniert und das Formular validiert, und lässt das Formular nicht einreichen, bis das korrekte Datum eingegeben ist. Hoffe es hilft!

Das einzige, was Sie tun müssen, ist diesen Code hinzuzufügen, und dann wird dies auf alle Felder mit der Klasse 'datePicker' angewendet.

%Vor%     
InkHeart 20.02.2014, 04:27
quelle
12

Ich bin mir nicht sicher, ob Datepicker ein Event auslöst, wenn der Wert des Controls durch direkte Eingabe geändert wird. Sie können eine Funktion an das Ereignis .change() binden:

%Vor%

Demo hier

    
Salman A 27.06.2012 15:20
quelle
8

Ich hatte genau die gleiche Anforderung und hier ist die Lösung, die für mich wie ein Zauber wirkte:

%Vor%

Modifizierte Geige hier referenziert von Salman A's Antwort

    
Main Pal 15.01.2016 16:23
quelle
4

Eine Option besteht darin, die Möglichkeit zur manuellen Eingabe eines Datums zu entfernen, indem Sie die Eingabefelder readonly eingeben. Dies wird den Benutzer davon abhalten, irgendetwas Verrücktes manuell einzugeben, und erzwingt die Verwendung des Datumsspeichers.

    
Esten 12.02.2015 17:42
quelle