Impostare il focus su una textarea
Per impostare il focus su una textarea
normalmente è sufficiente invocare, da JavaScript, il metodo focus
ma se cerchiamo di impostare il focus dall'interno di un evento
non funziona.
Per farlo funzionare va introdotto un ritardo con setTimeout
HTML
<textarea id="txt-body"></textarea>
<button type="button" id="btn">set focus</button>
JavaScript
document.getElementById("txt-body").focus()
JavaScript
document.getElementById("btn").addEventListener("click", () => {
document.getElementById("txt-body").focus();
});
Per farlo funzionare va introdotto un ritardo con setTimeout
JavaScript
document.getElementById("btn").addEventListener("click", () => {
setTimeout(() => {
document.getElementById("txt-body").focus();
}, 0);
});