¿Hay algún evento disponible para hacer clic en el botón Borrar que solo aparece en el elemento de entrada de búsqueda html5?
Aquí está mi intento. Pero si uso "buscar", el evento también se activa al presionar enter.
es decir, si presiono enter, la consola imprime la búsqueda clara
mySearchBar.addEventListener("keydown", (e) => { if (e.keyCode === ENTER_KEY_CODE) { console.log("search"); //Display search results } }); mySearchBar.addEventListener("search", () => { console.log("clear"); // Click the cross button of input type=search to Clear the search results and display all }); };Puede usar eventListener 'input' para verificar si la entrada está vacía cada vez que se agrega algo a la entrada, luego, si no hay valor, eso significa que la entrada de búsqueda se borró.
EDITAR: prueba de valor agregado en evento keydown
mySearchBar = document.getElementById('search'); mySearchBar.addEventListener("keydown", (e) => { if (e.key === 'Enter') { if (!e.currentTarget.value) console.log('cleared'); else console.log("search"); } }); mySearchBar.addEventListener('input', (e) => { if (!e.currentTarget.value) console.log('cleared'); }) <input type=search id=search>