Cómo puedo mostrar este símbolo "|" después de la última letra en un campo de entrada? Ejemplo: si el usuario ingresa cualquier texto en la entrada, supongamos que ingresó "abc". Quiero que se vea así en el campo de entrada "abc |" -para agregar (|) después del último carácter usando javascript ..

La idea es que tengo una entrada deshabilitada, por lo que no aparece ningún cursor para escribir en ella, quiero este símbolo "|" para ser como el cursor de escritura.

0
user6013527 13 ene. 2017 a las 17:44

1 respuesta

La mejor respuesta

Quieres hacer algo como lo siguiente. Puede utilizar la función setInterval de JavaScript para ejecutar en cada intervalo elegido, en este caso 500ms.

Cada vez, compruebe si el placeholder === '|' y, si es así, cámbielo.

Vea el ejemplo de código en ejecución a continuación.

var inpt = document.getElementById("input-box"),
	ltr = document.getElementById("ltr");

ltr.onclick = function () {
inpt.value += "Q"
}

setInterval(function() {
   if (document.getElementById('input-box').placeholder === '|') {
       document.getElementById('input-box').placeholder = '';
   } else {
       document.getElementById('input-box').placeholder = '|';
   }

    if(document.getElementById('input-box').value.slice(-1) === 'Q'){
       document.getElementById('input-box').value += '|';
    } else if(document.getElementById('input-box').value.slice(-1) === '|') {
        document.getElementById('input-box').value = document.getElementById('input-box').value.slice(0, -1);
    }
}, 500);
<input type="text" id="input-box" disabled>
   <button id="ltr">Letter Q
</button>
0
Paul Fitzgerald 13 ene. 2017 a las 18:39
Quiero el "|" para estar después del último carácter, por lo que cuando el usuario hace clic en el botón, el "|" la posición se convierte en después del último carácter jsfiddle.net/crhLd9mm/1
 – 
user6013527
13 ene. 2017 a las 18:22