Heim > Web-Frontend > js-Tutorial > Hauptteil

Master-Datumseingabesteuerung: Deaktivieren vergangener Daten in HTML-Formularen

王林
Freigeben: 2024-09-06 13:00:31
Original
664 Leute haben es durchsucht

Master Date Input Control: Disabling Past Dates in HTML Forms

Wenn Sie mit Formularen arbeiten, bei denen Benutzer ein Datum auswählen müssen, müssen Sie sie häufig daran hindern, vergangene Daten auszuwählen – insbesondere bei Szenarios wie der Buchung von Terminen oder der Durchführung von Reservierungen. Dies ist eine häufige Anforderung in vielen Anwendungen, und glücklicherweise bieten HTML und JavaScript eine einfache Möglichkeit, damit umzugehen.

Die HTML-Datumseingabe

Die Element mit type="date" ermöglicht Benutzern die einfache Auswahl eines Datums. Standardmäßig kann der Benutzer jedoch jedes beliebige Datum auswählen, auch vergangene. Um zu verhindern, dass Benutzer ein Datum vor dem aktuellen Tag auswählen, können Sie das min-Attribut in Verbindung mit JavaScript verwenden.

Beispiel für eine HTML-Datumseingabe

Hier ist ein Beispiel für eine einfache Datumseingabe:

<input type="date" id="reservationDate" name="reservationDate" />
Nach dem Login kopieren

Vergangene Daten deaktivieren

Um zu verhindern, dass Benutzer ein vergangenes Datum auswählen, müssen Sie das Min-Attribut des Feld. Das Attribut „min“ gibt das Mindestdatum an, das ausgewählt werden kann.

Sie können das aktuelle Datum mithilfe des Date-Objekts von JavaScript dynamisch festlegen, es im erforderlichen Format JJJJ-MM-TT formatieren und auf das Min-Attribut anwenden.

Implementierung in React

Für React-Benutzer können Sie dies wie folgt in eine TextField-Komponente integrieren:

import { TextField } from "@mui/material";
import { Field } from "formik";

const ReservationDateField = ({ touched, errors }) => {
  return (
    <Field
      as={TextField}
      label="Reservation Date"
      type="date"
      name="reservationDate"
      fullWidth
      margin="normal"
      InputLabelProps={{ shrink: true }}
      InputProps={{
        inputProps: {
          min: new Date().toISOString().split("T")[0], // Disable past dates
        },
      }}
      error={touched.reservationDate && Boolean(errors.reservationDate)}
      helperText={touched.reservationDate && errors.reservationDate}
    />
  );
};
Nach dem Login kopieren

Abbauen:

  • Datumsformatierung: new Date().toISOString().split("T")[0] gibt das heutige Datum im Format JJJJ-MM-TT an, das für das Min-Attribut erforderlich ist.
  • Mindestattribut: Dadurch wird sichergestellt, dass Benutzer nur Daten ab heute auswählen können.

Warum ist das wichtig?

Das Einschränken vergangener Daten ist in Formularen, die zukünftige Ereignisse verwalten, von entscheidender Bedeutung, z. B.:

  • Termine buchen.
  • Lieferungen planen.
  • Zukünftige Erinnerungen festlegen.

Es verbessert die Benutzererfahrung, indem es ungültige Datumsauswahlen verhindert und die Wahrscheinlichkeit von Benutzerfehlern verringert.

Abschluss

Das Deaktivieren vergangener Daten ist eine einfache, aber wirkungsvolle Möglichkeit, Ihre Formulare zu verbessern. Unabhängig davon, ob Sie Anfänger oder erfahrener Entwickler sind, stellt die Anwendung dieser Technik sicher, dass Ihre Benutzer nicht versehentlich falsche Daten auswählen. Dieser kleine Schritt kann einen großen Unterschied in der Benutzerfreundlichkeit Ihrer Anwendung machen.

Das obige ist der detaillierte Inhalt vonMaster-Datumseingabesteuerung: Deaktivieren vergangener Daten in HTML-Formularen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:dev.to
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!