HTMLInputElement: setRangeText() 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 HTMLInputElement.setRangeText() Methode ersetzt einen Textbereich in einem <input> oder <textarea> Element mit einem neuen String.

Syntax

js
setRangeText(replacement)
setRangeText(replacement, start)
setRangeText(replacement, start, end)
setRangeText(replacement, start, end, selectMode)

Parameter

replacement

Der einzufügende String.

start Optional

Der 0-basierte Index des ersten zu ersetzenden Zeichens. Der Standardwert ist der aktuelle Wert von selectionStart (der Anfang der aktuellen Auswahl des Benutzers).

end Optional

Der 0-basierte Index des Zeichens nach dem letzten zu ersetzenden Zeichen. Der Standardwert ist der aktuelle Wert von selectionEnd (das Ende der aktuellen Auswahl des Benutzers).

selectMode Optional

Ein String, der definiert, wie die Auswahl nach dem Ersetzen des Textes gesetzt werden soll. Mögliche Werte:

  • "select" wählt den neu eingefügten Text aus.
  • "start" verschiebt die Auswahl direkt vor den eingefügten Text.
  • "end" verschiebt die Auswahl direkt nach den eingefügten Text.
  • "preserve" versucht, die Auswahl beizubehalten. Das ist der Standardwert.

Rückgabewert

Keiner (undefined).

Beispiele

Klicken Sie auf die Schaltfläche in diesem Beispiel, um einen Teil des Textes im Textfeld zu ersetzen. Der neu eingefügte Text wird anschließend hervorgehoben (markiert).

HTML

html
<input
  type="text"
  id="text-box"
  size="30"
  value="This text has NOT been updated." />
<button onclick="selectText()">Update text</button>

JavaScript

js
function selectText() {
  const input = document.getElementById("text-box");
  input.focus();
  input.setRangeText("ALREADY", 14, 17, "select");
}

Ergebnis

Spezifikationen

Specification
HTML Standard
# dom-textarea/input-setrangetext-dev

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch