Esta es más una pregunta de JS y HTML que esbelta.
Quiero seleccionar todo el texto en el campo cuando el elemento se enfoca. Funciona bien cuando el elemento es un elemento de entrada , pero no funciona con td . ¿Cómo puedo lograr esto con td (sin jQuery)?
<script> function handleFocus(e) { e.target.select(); } </script> <input on:focus={handleFocus} value="Testing"/> <td on:focus={handleFocus} contenteditable="true">Testing</td>Necesitas crear un rango de selección.
<script> function handleFocus(e) { e.target.select(); } function tdFocus(e) { const el = e.target const range = document.createRange(); range.selectNodeContents(el); const sel = window.getSelection(); sel.removeAllRanges(); sel.addRange(range); } </script> <input on:focus={handleFocus} value="Testing"/> <td on:focus={tdFocus} contenteditable="true">Testing</td>