HTML-Attribut: minlength

Das minlength-Attribut definiert die minimale Zeichenlänge, die der Benutzer in ein <input>- oder <textarea>-Feld eingeben kann. Das Attribut muss einen ganzzahligen Wert von 0 oder höher haben.

Die Länge wird in UTF-16 Code-Einheiten gemessen, was (für die meisten Schriften) der Anzahl der Zeichen entspricht. Wenn kein minlength angegeben ist oder ein ungültiger Wert übergeben wird, gibt es keine Mindestlänge für die Eingabe. Dieser Wert muss kleiner oder gleich dem Wert von maxlength sein, da sonst der Wert niemals gültig sein kann, da es unmöglich ist, beide Kriterien zu erfüllen.

Die Eingabe schlägt in der Constraint-Validierung fehl, wenn die Länge des Textwerts des Feldes kürzer als die Anzahl der minlength-UTF-16-Code-Einheiten ist, wobei validityState.tooShort true zurückgibt. Die Constraint-Validierung wird nur angewendet, wenn der Wert vom Benutzer geändert wird. Sobald die Übermittlung fehlschlägt, zeigen einige Browser eine Fehlermeldung an, die die erforderliche Mindestlänge und die aktuelle Länge angibt.

minlength impliziert nicht required; eine Eingabe verstößt nur gegen eine minlength-Einschränkung, wenn der Benutzer einen Wert eingegeben hat. Ist eine Eingabe nicht required, kann ein leerer String übermittelt werden, auch wenn minlength festgelegt ist.

Probieren Sie es aus

<label for="name">Product name:</label>
<input
  id="name"
  name="name"
  type="text"
  value="Shampoo"
  minlength="3"
  maxlength="20"
  required />

<label for="description">Product description:</label>
<textarea
  id="description"
  name="description"
  minlength="10"
  maxlength="40"
  required></textarea>
label {
  display: block;
  margin-top: 1em;
}

input:valid,
textarea:valid {
  background-color: palegreen;
}

Beispiele

Durch das Hinzufügen von minlength="5" muss der Wert entweder leer oder fünf Zeichen oder länger sein, um gültig zu sein.

html
<label for="fruit">Enter a fruit name that is at least 5 letters long</label>
<input type="text" minlength="5" id="fruit" />

Wir können Pseudoklassen verwenden, um das Element basierend darauf zu stylen, ob der Wert gültig ist. Der Wert ist gültig, solange er entweder null (leer) oder fünf oder mehr Zeichen lang ist. Lime ist ungültig, lemon is valid.

css
input {
  border: 2px solid currentcolor;
}
input:invalid {
  border: 2px dashed red;
}
input:invalid:focus {
  background-image: linear-gradient(pink, lightgreen);
}

Spezifikationen

Specification
HTML
# attr-input-minlength
HTML
# attr-textarea-minlength

Browser-Kompatibilität

html.elements.input.minlength

html.elements.textarea.minlength

Siehe auch