Ich habe einen sehr einfachen jQuery Datepicker-Kalender:
$(document).ready(function(){
$("#date_pretty").datepicker({
});
});
und natürlich im HTML ...
<input type="text" size="10" value="" id="date_pretty"/>
Das heutige Datum wird für den Benutzer beim Aufrufen des Kalenders gut hervorgehoben. Wie kann ich jQuery veranlassen, das Textfeld selbst mit dem heutigen Datum beim Laden der Seite vorab zu füllen, ohne dass der Benutzer etwas unternimmt? In 99% der Fälle entspricht der heutige Standardwert dem gewünschten Datum.
Antworten:
Update: Es gibt Berichte, dass dies in Chrome nicht mehr funktioniert.
Dies ist prägnant und erledigt den Job (veraltet):
Dies ist weniger präzise, da die Verkettung die Verwendung in Chrom ermöglicht (04.06.2019):
quelle
$(".date-pick").datepicker().datepicker('setDate', new Date());
ThoSie müssen zuerst Datepicker () aufrufen> und dann 'setDate' verwenden, um das aktuelle Datum abzurufen.
ODER verketten Sie Ihren setDate-Methodenaufruf nach Ihrer Datepicker-Initialisierung, wie in einem Kommentar zu dieser Antwort angegeben
Es wird NICHT mit nur funktionieren
HINWEIS : Akzeptable setDate-Parameter werden hier beschrieben
quelle
schien zu funktionieren, aber es könnte einen besseren Weg da draußen geben ..
quelle
setDate
Sie auch die übliche relative Schreibweise von picker, zum Beispiel am nächsten Tag geben Sie einfach verwenden können , zu erhalten.datepicker('setDate', '+1d')
.Die
setDate()
Methode legt das Datum fest und aktualisiert das zugehörige Steuerelement. Hier ist, wie:Demo
Akzeptiert, wie in der Dokumentation erwähnt,
setDate()
gerne das JavaScript-Datumsobjekt, die Nummer oder eine Zeichenfolge:Wenn Sie sich fragen, wird durch das Festlegen der
defaultDate
Eigenschaft im Konstruktor das zugehörige Steuerelement nicht aktualisiert.quelle
Auf heute einstellen :
Auf gestern setzen :
Und so weiter mit einer beliebigen Anzahl von Tagen vor oder nach dem heutigen Datum .
Siehe jQuery-Benutzeroberfläche ›Methoden› setDate .
quelle
$(".date-pick").datepicker("setDate", '+0');
Die Lösung ist:
Danke Grayghost!
quelle
Dieser Code stellt sicher, dass das Format Ihres Datepickers verwendet wird:
Das Format muss nicht erneut angewendet werden, es verwendet den von Ihnen bei der Datumsauswahl-Initialisierung vordefinierten Datumsauswahl (falls Sie ihn zugewiesen haben!);)
quelle
Dieser hat für mich gearbeitet.
quelle
Der Code von David K Egghead hat perfekt funktioniert, danke!
Ich habe es auch geschafft, es ein wenig zu kürzen und es hat auch funktioniert:
quelle
quelle
Um die Datumsauswahl beim Laden auf eine bestimmte Standardzeit (in meinem Fall das aktuelle Datum) einzustellen und dann die Option zu haben, ein anderes Datum auszuwählen, lautet die Syntax:
quelle
Um das Datum vorab auszufüllen, müssen Sie zuerst den Datepicker initialisieren und dann den Parameterwert setDate übergeben.
quelle
Ich dachte nur, ich würde meine zwei Cent hinzufügen. Die Auswahl wird in einem Formular zum Hinzufügen / Aktualisieren verwendet. Daher muss das Datum aus der Datenbank angezeigt werden, wenn ein vorhandener Datensatz bearbeitet wird, oder das heutige Datum, wenn nicht. Unten funktioniert gut für mich:
quelle
Sie haben 2 Möglichkeiten:
OPTION A) Wird in Ihrem Kalender nur dann als "aktiv" markiert, wenn Sie auf die Eingabe klicken.
Js :
CSS :
OPTION B) Standardmäßig mit heute eingeben . Sie müssen zuerst den Datepicker ausfüllen.
quelle
Weisen Sie das hübsche Datum dem erforderlichen Steuerelement zu.
quelle
Versuche dies
quelle
Dies funktioniert besser für mich, da ich manchmal Probleme beim Aufrufen habe,
.datepicker('setDate', new Date());
da es zu Problemen kommt, wenn ich den Datepicker bereits mit Parametern konfiguriert habe.quelle
Benutze das:
$(".datepicker").datepicker({ dateFormat: 'dd-M-yy' }).datepicker('setDate', new Date());
So erhalten Sie ein Datum im Format: 10.10.2019, das für Benutzer verständlicher ist.
quelle
Quelle: http://www.kelvinluck.com/assets/jquery/datePicker/v2/demo/datePickerDefaultToday.html
quelle