14/10/2011, 12:19
|
| | Fecha de Ingreso: marzo-2009
Mensajes: 155
Antigüedad: 15 años, 9 meses Puntos: 1 | |
un solo click a la ves hola comundad tengo un problema, tengo un label donde en el evento click ejecuto una petion ajax que me devuelve algunos datos los cuales yo le mustro al usuario, que pasa que si hago click dos veces me hace dos peticiones y me muestra los datos repetidos, como puedo hacer para solo me muestre la informacion solo una ves.
function pajax(idpadre)
{
$.getJSON(direccion,{'param1' : idpadre}, parseData );
}
function parseData(data)
{
// ... aqui va el codigo que
}
// esta funcion es para hacer la peticion si los datos no estas si estan solo oculta o musta la informacion, pero si no entonces hace la peticion, ahora en el momento inicial donde no se han cargado los datos se hacen dos click seguidos sobre el label y se ejecuta esta funcion Mostrar dos veces y como no tiene a nadie creado todavia entonces muestra los datos dos veces, como podria hacer click y me cargara los datos y me desabilitara el click hasta que no terminara de mostrar los datos, es hacer algo como el mensaje de cargando pero en ves de eso desavilitar el click.
function Mostrar(idelemento)
{
if($('#div-'+ idelemento).length > 0 && ($('#div-'+ idelemento).is(':hidden')))
{
hijos = document.getElementById('div-' + idelemento).childNodes;
for(i =0 ; i< hijos.length; i++)
{
if(hijos[i].childNodes.length > 1 && hijos[i].childNodes[1].id != 'lb')
hijos[i].childNodes[1].style.display ="none";
}
$('#div-'+ idelemento).show();
}
else if($('#div-'+ idelemento).length > 0)
{
$('#div-'+ idelemento).hide();
}
else
pajax(idelemento);
}
<label id="lb" onclick="DatosLey(this.parentNode.id)" style="cursor: pointer"><?php echo $ley->getLey() ?></label>
saludos manuelle |