Foros del Web » Programando para Internet » Javascript »

evento tiempo de ejecucion

Estas en el tema de evento tiempo de ejecucion en el foro de Javascript en Foros del Web. hola amigos tengo la siguiente cuestion, tengo unos checkbox q segun sean activados hacen unas cosas pero si agrego nuevos digamos en tiempo de ejecucion, ...
  #1 (permalink)  
Antiguo 04/05/2012, 08:32
 
Fecha de Ingreso: junio-2009
Mensajes: 145
Antigüedad: 14 años, 10 meses
Puntos: 0
evento tiempo de ejecucion

hola amigos

tengo la siguiente cuestion, tengo unos checkbox q segun sean activados hacen unas cosas pero si agrego nuevos digamos en tiempo de ejecucion, no toman los eventos asociados, me imagino que es porque los eventos los cargo cuando se inicia las paginas y cuando agrego elementos uevos ya no los jala espero q me puedan ayudar con esto

les pongo la funcion q estoy utilizando

$("input.principal").each(function(){

$(this).change(function(){

var identificador = $(this).attr("id");

if($(this).is(":checked"))
{
$("input." + identificador).attr("checked","checked");
}
else
{
$("input." + identificador).removeAttr("checked");
}

});
});
  #2 (permalink)  
Antiguo 04/05/2012, 09:19
Avatar de fjrueda  
Fecha de Ingreso: marzo-2008
Ubicación: Bucaramanga
Mensajes: 313
Antigüedad: 16 años, 1 mes
Puntos: 35
Respuesta: evento tiempo de ejecucion

Holla Chelitox.

No comprendí bien eso de en tiempo de ejecución .... Tiene un botón en la pagina que al hacer click agrega mas botones de tipo check ??

Y también yo diría que mirara las opciones del "innerHTML" es muy sencillo de usar y ayuda bastante, no puede ser muy optimo o ideal para algunos, pero si ayuda bastante.
  #3 (permalink)  
Antiguo 07/05/2012, 08:34
 
Fecha de Ingreso: junio-2009
Mensajes: 145
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: evento tiempo de ejecucion

Hola grax por tu respuesta, como tu dices agrego mas checkbox, te explico rapidamente que quiero hacer,

estoy haciendo un modulo de permisos y en si lo que gago es q tengo un check principal q al seleccionarlo, selecciona los check que esten abajo de su nivel,

eso ya lo tengo el proeblema q cuand se agrega mas check atravez de un boton esos no agarran las funciones q tengo en jquery para hacer lo q te comentaba
  #4 (permalink)  
Antiguo 07/05/2012, 08:40
Avatar de Dafonz  
Fecha de Ingreso: octubre-2009
Mensajes: 127
Antigüedad: 14 años, 6 meses
Puntos: 36
Respuesta: evento tiempo de ejecucion

Si te refieres a eventos solamente de elementos creados en ejecución solo tienes que ponerle live para que los "escuche"... por ejemplo:
Código Javascript:
Ver original
  1. ('.elementocreado').live("click",function() {
  2. });

Si te refieres a que no los cambia por ejemplo con el checkbox que mencionas si esta raro ya que si cumplen las condiciones como los demás debe de comportarse igual aunque sean creados despues..

también esto:
$("input.principal").each(function(){

$(this).change(function()

no tiene mucho sentido, para que agregar un listener para cada uno si de todas formas agarras todo con this, es decir lo puedes hacer todo dinámico al momento.
  #5 (permalink)  
Antiguo 07/05/2012, 08:54
 
Fecha de Ingreso: junio-2009
Mensajes: 145
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: evento tiempo de ejecucion

grax creo q con lo de live me servira, pero lo ultimo no entendi, como q dinamico me podrias poner un ejemplo, porfa

y otra cosa lo del live funciona tambien con lor pluign como se llama por ejemplo yo utilizo
el treeview $("#browser").treeview(); que es para las pestañas de niveles no se si lo has visto se podria utilizar igual con el live,
  #6 (permalink)  
Antiguo 07/05/2012, 09:10
Avatar de Dafonz  
Fecha de Ingreso: octubre-2009
Mensajes: 127
Antigüedad: 14 años, 6 meses
Puntos: 36
Respuesta: evento tiempo de ejecucion

No creo.. es que es para los eventos nada mas.. lo que puedes hacer es no crearlos en el document ready o asi.. por ejemplo:

Código Javascript:
Ver original
  1. $('.boton').click(function() {
  2.             $('.simon').append("<input type='checkbox' id='si' /><label for='si'>SI</label>");
  3.             $('.simon').buttonset();
  4.         });

Aqui al darle click a boton se agrego un checkbox el cual a la capa contenedora (simon) le aplique .buttonset... algo asi seria para treeview, solo no lo hagas en document ready, si no dentro del método donde creas todo.

Y sobre lo otro que te dije es que no entiendo muy bien que quieres hacer pero porque agregar each si igual estas seleccionando solo this.. es decir porque no hacer algo asi simplemente:

Código Javascript:
Ver original
  1. $("input.principal").change(function(){
  2.     var identificador = $(this).attr("id");
  3.     $(this).is(":checked") ? $("input." + identificador).attr("checked","checked") : $("input." + identificador).removeAttr("checked");
  4. });
$("input.principal") no significa que sera solamente 1.. no es necesidad de agregar el listener de change a cada uno, si igual sacas los datos con this (es decir solo el que cambio)
  #7 (permalink)  
Antiguo 07/05/2012, 09:19
 
Fecha de Ingreso: junio-2009
Mensajes: 145
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: evento tiempo de ejecucion

tienes mucha razon, ya lo cheque y no es necesario el each lo estaba viendo de una perspectiva diferentes bueno grax y ya checare lo de mas del treeview

Etiquetas: jquery
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 15:58.