¿Cómo seleccionar un rango de caracteres en un área de texto usando Javascript?
-
03-07-2019 - |
Pregunta
Pregunta simple: ¿hay alguna forma de seleccionar un subconjunto del texto que se muestra en < textarea > control usando Javascript?
p. tener una función como
selectText (startCharNo, endCharNo, textareaName);
También debe ser compatible con IE6.
Solución
sí, es posible
element.focus();
if(element.setSelectionRange)
element.setSelectionRange(startCharNo, endCharNo);
else {
var r = element.createTextRange();
r.collapse(true);
r.moveEnd('character', endCharNo);
r.moveStart('character', startCharNo);
r.select();
}
El elemento es la referencia al área de texto
Otros consejos
createTextRange ()
selectText(startCharNo, endCharNo, textAreaName){
var content = document.getElementById(textAreaName).innerHTML; //value may work too
var piece = content.subString(startCharNo, endCharNo);
return piece;
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow