Gegeben ein Eingabeelement:
<input type="date" />
Gibt es eine Möglichkeit, den Standardwert des Datumsfelds auf das heutige Datum zu setzen?
Gegeben ein Eingabeelement:
<input type="date" />
Gibt es eine Möglichkeit, den Standardwert des Datumsfelds auf das heutige Datum zu setzen?
Die beiden ersten Antworten sind falsch.
Ein kurzer Einzeiler, der reines JavaScript verwendet, die lokale Zeitzone berücksichtigt und keine Definition zusätzlicher Funktionen erfordert:
const element = document.getElementById('date-input');
element.valueAsNumber = Date.now()-(new Date()).getTimezoneOffset()*60000;
<input id='date-input' type='date'>
Ermittelt die aktuelle Datumszeit in Millisekunden (seit Epoche) und wendet den Zeitzonenversatz in Millisekunden an (Minuten * 60k Minuten pro Millisekunde).
Sie können das Datum einstellen mit element.valueAsDate
aber dann haben Sie einen zusätzlichen Aufruf der Date()
Konstrukteur.
Sehr einfach, verwenden Sie einfach serverseitige Sprachen wie PHP, ASP, JAVA oder auch Sie können Javascript verwenden.
Hier ist die Lösung
<?php
$timezone = "Asia/Colombo";
date_default_timezone_set($timezone);
$today = date("Y-m-d");
?>
<html>
<body>
<input type="date" value="<?php echo $today; ?>">
</body>
</html>
Bei den einfachsten Lösungen scheint übersehen zu werden, dass die UTC-Zeit genutzt wird, auch bei denjenigen, die sehr hoch bewertet werden. Im Folgenden finden Sie eine gestraffte, ES6, nicht jQuery Version von ein paar bestehenden Antworten:
const today = (function() {
const now = new Date();
const month = (now.getMonth() + 1).toString().padStart(2, '0');
const day = now.getDate().toString().padStart(2, '0');
return `${now.getFullYear()}-${month}-${day}`;
})();
console.log(today); // as of posting this answer: 2019-01-24
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.