Ver Mensaje Individual
  #2 (permalink)  
Antiguo 06/07/2014, 09:28
PHPeros
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: Editando el evento onClick de un button

Mal de las dos formas.

onclick no se pone en camel case:

Código Javascript:
Ver original
  1. function ejecutar1(){
  2.         document.getElementById("boton").value="Adiós";
  3.         document.getElementById("boton").onclick=ejecutar2;
  4. }
  5. function ejecutar2(){
  6.         document.getElementById("boton").value="Hola";
  7.         document.getElementById("boton").onclick=ejecutar1;
  8. }

En el el siguiente mezclas HTML con JavaScript. No puedes asociar un handler a un atributo de HTML, porque éste no lo interpreta. En tal caso, y a pesar de ser poco recomendado deberías cambiarlo por:

Código Javascript:
Ver original
  1. function ejecutar1(){
  2.         document.getElementById("boton").value="Adiós";
  3.         document.getElementById("boton").setAttribute("onclick","ejecutar2()");
  4. }
  5. function ejecutar2(){
  6.         document.getElementById("boton").value="Hola";
  7.         document.getElementById("boton").setAttribute("onclick","ejecutar1()");
  8. }

Aunque finalmente deberías quedarte con addEventListener, que es el recomendado por la W3C:

Código Javascript:
Ver original
  1. function ejecutar1(){
  2.         document.getElementById("boton").value="Adiós";
  3.         document.getElementById("boton").addEventListener("click",ejecutar2,false);
  4. }
  5. function ejecutar2(){
  6.         document.getElementById("boton").value="Hola";
  7.         document.getElementById("boton").addEventListener("click",ejecutar1,false);
  8. }

Saludos

Última edición por PHPeros; 06/07/2014 a las 09:34