daterangepicker anwenden Button nicht richtig funktioniert
Ich bin mit daterangepicker überprüfen Sie bitte mein code hier JSFIDDLE
Habe ich set default Datum
"endDate": "08/03/2015",
"endDate": "08/03/2015",
Und ich haben ein alert()
für die Prüfung mein code funktioniert oder nicht.
alert("New date range selected: '" + start.format('YYYY-MM-DD') + "' to '" + end.format('YYYY-MM-DD') + "'");
Wenn ich bin klicken auf book_date
textbox-Reihe-Kalender ist erschienen.
Wenn ich Veränderungen Datum und klicken auf anwenden-button seine Arbeitsmethoden in Ordnung. Meine alert()
Kasten zeigt perfekt. Aber wenn ich auf die Schaltfläche übernehmen, ohne änderung eines Datums. Zeit alert()
box wird nicht angezeigt.
Auch book_date
ist immer default-Datum nach einem Klick auf Textfeld, und klicken Sie irgendwo in die Seite. Also ich will nicht, um alle Standard-Datum ohne cilcking bestimmten Datum. textbox leer sein sollte, während Sie außerhalb von Kalender.
Meine Bearbeiteten Code:
$('#book_date').on('apply.daterangepicker', function(ev, picker) {
alert("New date range selected: '" + picker.startDate.format('YYYY-MM-DD') + "' to '" + picker.endDate.format('YYYY-MM-DD') + "'");
});
Meine textbox-Kalender bekommen, default-Wert, wenn ich nicht wählen Sie alle und klicken auf eine Stelle außerhalb irgendwo auf der Seite.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die callback-Funktion nur ausgeführt wird, wenn ein neue Datum ausgewählt ist. Als mögliche Problemumgehung können Sie den
apply.daterangepicker
Ereignis, das ausgelöst wird, wenn die Schaltfläche übernehmen geklickt wird:JS:
Sehen Sie ein Beispiel,hier.
Erweiterte Antwort
Es gibt keine eingebaute Möglichkeit, um zu verhindern, dass die Termine werden festgelegt, wenn Sie klicken Sie auf aus der Datum-picker, so dass Sie könnten versuchen, diese:
Anpassen der
hide
Funktion, so dass die Termine werden gelöscht, wenn die date picker geschlossen:Update der
apply
- Funktion zum füllen der Datteln Feld entsprechend. Also die Daten werden nur gesetzt, wenn der apply-button geklickt wird:Aktualisierte demo hier.
Apply
- Taste auch nicht funktioniertWenn wir auf die Schaltfläche übernehmen dann die callback-Funktion ausgeführt, aber es ist Bedingung. Wenn der Datumsbereich geändert wird dann die callback-Funktion wird ausgeführt, sonst wird es nicht ausgeführt.
Wenn Sie wollen, um es auszuführen jedes mal, wenn Sie auf die Schaltfläche übernehmen hinsichtlich weniger der Datumsbereich geändert oder nicht, dann mache folgende Schritte.
Öffnen daterangepicker.js
Finden die Funktion zum ausblenden der DateRangePicker.Prototyp
Kommentieren Sie die folgende Bedingung vergleicht die neu gewählten Datumsbereich und die alten ausgewählten Datumsbereich
},
oder auch Kommentar diesem.notify() in hide-Funktion und legen Sie es in clickApply: Funktion
JS:
HTML: