Tengo una funcion que asigna dinamicamente eventos a un div que se crea en tiempo de ejecucion. Necesito que algunos parametros que estan fuera de la funcion live se pasen a los eventos creados.
Codigo
//la funcion recibe un objson previamente pasado por la funcion eval()
function PintarFiltro(objson){
for(var i = 0; i < objson[0].filtros.length;i++){
//se crea el div
var nuevodiv = $('<div/>',{id:objson[0].filtros[i].filtro1.idetapaxfiltro1,'class':'filtro'}).html(" <span class='mediumtitle'>"+objson[0].filtros[i].filtro1.nombre+"</span>").css({cursor:'pointer'});
nuevodiv.appendTo($('#'+parent));
//se crea el mapa de eventos para ese div
$('#'+objson[0].filtros[i].filtro1.idetapaxfiltro1).live({
mouseover:function(){
$(this).css({color:'#FFF',backgroundColor:'orange' });
},
mouseout:function(){
$(this).css({color:'#000',backgroundColor:'lightye llow'});
},
click: function(){
//en este evento necesito pasar el objson nuevamente pero no lo reconoce
ConsultaFiltro2XFiltro1($(this).attr('id'),'pintar ',objson[0].filtros[i].filtro1.nombre);
}
});
}
}
en el evento click necesio pasar el objson para que la funcion que llama ese evento, se ejecute correctamente
la consola me dice que es undefined, es decir que no se está leyendo el objson dentro del evento click....
gracias por la ayuda