Estoy creando un botón dinámicamente usando JavaScript y al mismo tiempo asignando atributos como 'ID', 'tipo', etc. y también 'onclick' para activar una función.¿Cómo se asigna un atributo JavaScript 'onclick' dinámicamente?
Todo funciona bien aparte de la asignación del 'onclick'. Cuando se presiona, el botón no activa la función como se supone que debe hacerlo. la función que intento ejecutar es 'navegar (-1)' como se ve a continuación.
¿Dónde me estoy equivocando?
Aquí está mi código:
function loadNavigation() {
var backButton;
backButton = document.createElement('input');
backButton.ID = 'backButton';
backButton.type = 'button';
backButton.value='Back';
backButton.onclick = 'navigate(-1)';
document.body.appendChild(backButton);
}
Una vieja pregunta, pero esto es necesario decir: ya no se asigna OnClick;) utilice button.addEventListener ('clic', función) en lugar. – AxelH
@AxelH ¿Cuál es la razón para usar 'addEventListener' sobre' onclick'? –
Onclick es un atributo antiguo para vincular una función a un evento. AddEventListener utiliza una colección para almacenar las funciones de cada evento, lo que significa que puede agregar tantas funciones como desee para un evento. Esto puede evitar el comportamiento inesperado si tiene algunas funcionalidades de configuración de scripts que pueden anular otras funcionalidades. Onclick es útil para el código de depuración rápida, pero en producción, no lo usaría. – AxelH