Foros del Web » Programando para Internet » Javascript »

Modificar onClick con setAttribute (o algún similar)

Estas en el tema de Modificar onClick con setAttribute (o algún similar) en el foro de Javascript en Foros del Web. Resulto. Buenas noches gente!, Sin mas, es lo que estoy intentando hacer, y no lo logro de ninguna manera. Deseo actualizar mediante JavaScript, el onClick ...
  #1 (permalink)  
Antiguo 09/12/2009, 06:47
 
Fecha de Ingreso: abril-2006
Mensajes: 95
Antigüedad: 18 años
Puntos: 0
Modificar onClick con setAttribute (o algún similar)

Resulto.

Buenas noches gente!,

Sin mas, es lo que estoy intentando hacer, y no lo logro de ninguna manera.

Deseo actualizar mediante JavaScript, el onClick de un botón, probé de muchas maneras pero no he podido lograrlo.

Para explicar lo que quiero hacer, plantié un ejemplo. Se trata de 2 botones, al preciona "botón1", invoca "funcion1", la cual en su interior, pretende colocar al onClick de "boton2" la "funcion2". Si todo sale bien, al precionar "boton2", debería invocarce "funcion2", la cual tiene como objeto mostrar un mensaje en pantalla.

El código:

- HTML:

Código HTML:
<body>
<p>
	<input type="button" name="boton1" id="boton1" value="boton1" onclick="funcion1();"/>
</p>
<p>
	<input type="button" name="boton2" id="boton2" value="boton2" />
</p>
</body> 
- JavaScript

Código:
function funcion1()
{
	document.getElementById('boton2').setAttribute = ("onClick", "funcion2();");
}

function funcion2()
{
	document.write("Funcion 2");
}
Acá les dejo el link del HTML.

Y acá el link del RAR con el archivo HTML por si quieren bajarlo.

En el archivo HTML, comentada en la "funcion1" están varias de las fomas en que lo eh intentado, pero no funcionó.

Vengo de este post, pero me muevo aquí, por que me parece que no he sido muy específico en aquel otro, y los usuarios se han desmotivado, y facil reconocer cuando un tema se muere.

Espero no molestar a nadie con esto, y por otro lado, ser lo mas claro y específico posible.

Agradezco mucho la ayuda de quien sea que me la brinde, y una de las mejores manes de agradecer, creo yo, que por empezar, es brindar mi duda lo mas claro posible.

De antemano, quiero agradecer a quien me preste su conocimiento.

Saludos!.

Última edición por elkevin; 09/12/2009 a las 13:17 Razón: Resuelto.
  #2 (permalink)  
Antiguo 09/12/2009, 08:11
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 14 años, 5 meses
Puntos: 65
Respuesta: Modificar onClick con setAttribute (o algún similar)

Esto esta mal
document.getElementById('boton2').setAttribute = ("onClick", "funcion2();");

Esto esta bien
document.getElementById('boton2').setAttribute("on Click", "funcion2();");
  #3 (permalink)  
Antiguo 09/12/2009, 13:16
 
Fecha de Ingreso: abril-2006
Mensajes: 95
Antigüedad: 18 años
Puntos: 0
Respuesta: Modificar onClick con setAttribute (o algún similar)

Cita:
Iniciado por jackson666 Ver Mensaje
Esto esta mal
document.getElementById('boton2').setAttribute = ("onClick", "funcion2();");

Esto esta bien
document.getElementById('boton2').setAttribute("on Click", "funcion2();");
Muchas gracias por ayudarme colega!.

Ahí lo saqué andando!, y busqué una solución para IE6 también!, lo dejo por si a alguien le sirve:

- JavaScript:

Código:
document.getElementById('boton2').onclick = function () {funcion2()}; // IE 6

document.getElementById('boton2').setAttribute("onClick", "funcion2();"); // IE7+ FF
Saludos!, muchísimas gracias!.
  #4 (permalink)  
Antiguo 12/01/2010, 09:01
 
Fecha de Ingreso: enero-2010
Mensajes: 39
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Modificar onClick con setAttribute (o algún similar)

Buenas,
Yo tengo el mismo problema pero tus soluciones por alguna extraña razon no me andan... dejo mi codigo

Código Javascript:
Ver original
  1. var td7 = document.createElement("TD")
  2. var td7i = document.createElement("IMG");
  3. td7i.setAttribute("src","img/quitar.png");
  4. td7i.setAttribute("width","15");
  5. td7i.setAttribute("height","15");
  6. td7i.setAttribute("onClick", "agrega_celda('medicamentos');");
  7. td7.appendChild(td7i);

Alguna sugerencia?

Nota: Estoy testeando en IE8
  #5 (permalink)  
Antiguo 12/01/2010, 09:13
 
Fecha de Ingreso: enero-2010
Mensajes: 39
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Modificar onClick con setAttribute (o algún similar)

Me respondo...

Para Internet Explorer la sentencia del SetAtribute para el OnClick es distinta, mi codigo quedaria asi:

Código Javascript:
Ver original
  1. var td7 = document.createElement("TD")
  2. var td7i = document.createElement("IMG");
  3. td7i.setAttribute("src","img/quitar.png");
  4. td7i.setAttribute("width","15");
  5. td7i.setAttribute("height","15");
  6.  
  7. // En IE el SetAttribute para onclick no anda, por lo que hay que reemplazar por:
  8. td7i["onclick"]=new Function("agrega_celda('medicamentos');");
  9. // Obviamente pueden agregar un validador de navegador y preguntan con un "if" para ver que navegador esta usando el usuario
  10.  
  11. td7i.setAttribute("title","Quitar Medicamento");
  12. td7.appendChild(td7i);

Espero les sirva
  #6 (permalink)  
Antiguo 12/01/2010, 09:14
 
Fecha de Ingreso: abril-2006
Mensajes: 95
Antigüedad: 18 años
Puntos: 0
Respuesta: Modificar onClick con setAttribute (o algún similar)

Cita:
Iniciado por TragedyCL Ver Mensaje
Buenas,
Yo tengo el mismo problema pero tus soluciones por alguna extraña razon no me andan... dejo mi codigo

Código Javascript:
Ver original
  1. var td7 = document.createElement("TD")
  2. var td7i = document.createElement("IMG");
  3. td7i.setAttribute("src","img/quitar.png");
  4. td7i.setAttribute("width","15");
  5. td7i.setAttribute("height","15");
  6. td7i.setAttribute("onClick", "agrega_celda('medicamentos');");
  7. td7.appendChild(td7i);

Alguna sugerencia?

Nota: Estoy testeando en IE8
Colega, me decidí por usar la siguiente sintaxis, que no me ha generado problemas en ningún navegador:

Código:
document.getElementById('elemento').onclick = function () {mi_función(parametro_1, parametro_2, ... , parametro_n)};
Saludos!.
  #7 (permalink)  
Antiguo 21/09/2010, 17:48
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1
Antigüedad: 13 años, 7 meses
Puntos: 0
De acuerdo Respuesta: Modificar onClick con setAttribute (o algún similar)

Colega muchas gracias, a mi me servido y me ha funcionado bastante bien! saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:45.