Foros del Web » Programando para Internet » Javascript »

onclick en checkbox

Estas en el tema de onclick en checkbox en el foro de Javascript en Foros del Web. Estoy creando un checkbox dinamicamente y necesito añadirle una funcion al evento onclick u onchange. Sin embargo, no logro hacerlo. Aqui, el codigo: Código: var ...
  #1 (permalink)  
Antiguo 04/10/2007, 20:51
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 20 años, 8 meses
Puntos: 0
onclick en checkbox

Estoy creando un checkbox dinamicamente y necesito añadirle una funcion al evento onclick u onchange. Sin embargo, no logro hacerlo. Aqui, el codigo:

Código:
var checkbox = document.createElement('input');
checkbox.id = decodeURIComponent(arrayMCB.items[i][0]);
if (searchID(checkbox.id) != -1){
	checkbox.checked = 'TRUE';
}
checkbox.type = 'checkbox';
checkbox.onclick = checkboxClick;
innerPopup.appendChild(checkbox);
La funcion checkboxClick() existe. Al hacer click en un checkbox de estos, nunca llego a esa funcion (uso Firebug para debuggear).

Como hago para que ese onclick (u onchange) funcione?

Muchas Gracias
  #2 (permalink)  
Antiguo 04/10/2007, 21:52
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 6 meses
Puntos: 3
Re: onclick en checkbox

que tal, prueba con

checkbox.onclick = function(){checkboxClick();};

espero te funcione, suerte!
__________________
Wow! No se que decir...
  #3 (permalink)  
Antiguo 04/10/2007, 23:16
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 20 años, 8 meses
Puntos: 0
Re: onclick en checkbox

gracias por tu respuesta, pero no, sigue sin funcionar..

alguna otra idea?
  #4 (permalink)  
Antiguo 04/10/2007, 23:31
 
Fecha de Ingreso: septiembre-2005
Mensajes: 1.289
Antigüedad: 18 años, 6 meses
Puntos: 3
Re: onclick en checkbox

pues mira, este es un ejemplo que io uso y si me funciona...

cell.onclick=function(){alert('id:'+this.id);};}

entonces no se que otro modo pueda servir, tal vez deberias intentar un ejemplo muy simple a ver que te da...

pon un alert antes y despues de donde le asignas el evento a tu objeto para saber si si pasa por esa linea de código
__________________
Wow! No se que decir...
  #5 (permalink)  
Antiguo 05/10/2007, 10:05
 
Fecha de Ingreso: agosto-2003
Mensajes: 120
Antigüedad: 20 años, 8 meses
Puntos: 0
Re: onclick en checkbox

Logre que funcione, pero con setAttribute('onclick', 'checkboxClick()') ..

El checkbox.onclick lo ejecuta pero no le asigna el evento.

El problema ahora es que IE no lo va a tomar.
  #6 (permalink)  
Antiguo 05/10/2007, 19:08
Avatar de derkenuke
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: self.location.href
Mensajes: 2.665
Antigüedad: 20 años, 6 meses
Puntos: 45
Re: onclick en checkbox

Hola macaco:

Prueba a darnos un ejemplo completo, con el checkboxClick() también. Realmente es extraño lo que te ocurre... debe haber trampa en algún sitio.

Prueba si no a asignar el evento una vez adjuntado el elemento al documento... no sé.


Un saludo.
__________________
- Haz preguntas inteligentes, y obtendrás más y mejores respuestas.
- Antes de postearlo Inténtalo y Búscalo.
- Escribe correctamente tus mensajes.
  #7 (permalink)  
Antiguo 06/10/2007, 01:10
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: onclick en checkbox

Hola:

La creación dinamica de controles de formularios es de las cosas más problemáticas, ya que muchas cosas no son fáciles de asignar/modificar sobre todo lor razones de seguridad...

Una de las formas que parece que funciona bien en los navegadores que he probado es clonar nodos... por ejemplo dentro de alguna capa oculta:

<div style="display: none">
<input type="checkbox" id="ch_oculto" onclick="checkboxClick()" />
</div>
...
nuevoCheck = document.getElementById("ch_oculto").cloneNode(tru e);
nuevoCheck.id = nuevoId;
...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 06/10/2007, 06:50
 
Fecha de Ingreso: enero-2007
Mensajes: 51
Antigüedad: 17 años, 3 meses
Puntos: 0
Re: onclick en checkbox

Este código lo e probado en FF y IE y funciona perfectamente prueba lo y dinos que tal te anda el código

Código HTML:
<HTML>
<HEAD>
</HEAD>
<BODY>

<div id="idprueva">hola</div>

</BODY>
</HTML>

<script type="text/javascript">
function muestraMensaje(texto) {
alert(texto);
}
var elDiv = document.getElementById("idprueva");
//var p = document.createElement("p");
//var texto = document.createTextNode("Este párrafo no existía en la página HTML original");
//p.appendChild(texto);
//elDiv.appendChild(p);


//esto espara saber cuando el usuario le da click a el <div id="idprueva">
elDiv.onclick = function() {
  if(elDiv.addEventListener) { // navegadores DOM
    elDiv.addEventListener("click", muestraMensaje("hola"), false);
  }
  else if(elDiv.attachEvent) { // Internet Explorer
    elDiv.attachEvent("onclick", muestraMensaje("como te encuentras"));
  }
  else { // resto de navegadores
    elDiv["onclick"] = muestraMensaje;
  }
}

</script> 

Última edición por escudo40; 06/10/2007 a las 07:23
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 13:17.