HTMLTextAreaElement: setSelectionRange()-Methode

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

Die setSelectionRange()-Methode des HTMLTextAreaElement-Interfaces setzt die Start- und Endpositionen der aktuellen Textauswahl und optional die Richtung in einem <textarea>-Element. Dies aktualisiert den Auswahlszustand sofort, obwohl das visuelle Hervorheben nur erscheint, wenn das Element fokussiert ist. Die Richtung gibt an, in welcher Weise die Auswahl erfolgt ist; zum Beispiel, dass die Auswahl durch den Benutzer durch Klicken und Ziehen vom Ende des ausgewählten Textes zum Beginn hin gesetzt wurde. Zusätzlich werden die select und selectionchange Events ausgelöst.

Diese Methode aktualisiert die HTMLTextAreaElement.selectionStart, HTMLTextAreaElement.selectionEnd und HTMLTextAreaElement.selectionDirection-Eigenschaften sofort, unabhängig vom Fokuszustand. Das visuelle Auswahl-Hervorheben erfordert, dass das Element fokussiert ist.

Hinweis: Während setSelectionRange() die Auswahl-Eigenschaften sofort aktualisiert, erscheint das visuelle Auswahl-Hervorheben nur, wenn das <textarea> fokussiert ist. Das Fokussieren des Elements wird ebenfalls ein selectionchange-Event auslösen.

Um allen Text eines <textarea>-Elements zu markieren, verwenden Sie die HTMLTextAreaElement.select()-Methode.

Syntax

js
setSelectionRange(selectionStart, selectionEnd)
setSelectionRange(selectionStart, selectionEnd, selectionDirection)

Parameter

selectionStart

Der Index des ersten ausgewählten Zeichens. Ein Index, der größer ist als die Länge des Werts des Elements, wird als das Ende des Werts behandelt. Siehe die selectionStart-Eigenschaft für weitere Informationen.

selectionEnd

Der Index des Zeichens nach dem letzten ausgewählten Zeichen. Ein Index, der größer ist als die Länge des Werts des Elements, wird als das Ende des Werts behandelt. Wenn selectionEnd kleiner ist als selectionStart, werden beide als der Wert von selectionEnd behandelt. Siehe die selectionEnd-Eigenschaft für weitere Informationen.

selectionDirection Optional

Das Schlüsselwort "forward", "backward" oder der Standardwert "none", welches die Richtung angibt, in der die Auswahl erfolgt ist. Siehe die selectionDirection-Eigenschaft für weitere Informationen.

Rückgabewert

Keiner (undefined).

Beispiele

js
const textarea = document.getElementById("text-box");
const chars = textarea.textLength;
// if the value is more than 10 characters long
if (chars > 10) {
  // Element must be focused to select a range of text within it
  textarea.focus();
  // select the text between the fifth character from the start and
  // the fifth character from the end
  textarea.setSelectionRange(5, chars - 5);
} else {
  // otherwise select all the text
  textarea.select();
}

Spezifikationen

Specification
HTML
# dom-textarea/input-setselectionrange-dev

Browser-Kompatibilität

Siehe auch