11/09/2010, 09:30
|
| | Fecha de Ingreso: junio-2009
Mensajes: 5
Antigüedad: 15 años, 6 meses Puntos: 0 | |
Problema con .live() Tengo una llamada ajax a una consulta php : function listado(aplicacion) {
$.ajax({
url: "consulta.php",
cache: false,
type: "POST",
success: function(data) {
$('#dtu').html(data);
}
});
}
donde la respuesta ajax : <tr class="dtu" id="<?php echo $listar[$i]['id'] ?>">
<td width="50"><?php echo $listar[$i]['cod'] ?></td>
<td width="500"><?php echo $listar[$i]['raz'] ?></td>
<td width="20"><?php echo $img ?></td>
</tr>
la inserto en un div del DOM con un id="dtu".
y se me muestran los registros de la consulta en modo <tr><td></td></<tr>
Hasta aqui todo me va correcto.
Para obtener el id de cada registro insertado en el DOM hago lo siguiente: $('.dtu').live('click', function() {
$('.dtu').removeClass('seleccion_registro');
$(this).addClass('seleccion_registro');
sub_apli($(this).attr('id'));
});
Y aqui es donde me viene el problema que cuando se ejecuta la funcion "sub_apli" :
function sub_apli(id_reg) {
alert(" ha seleccionado el registro: " + id_reg);
});
}
A cada registro que le hago click me sale el alert mas todos los que anteriormente he clickeado, no se si me esplico....
quiero decir que hago click en el primer registro y me sale el alert con el id=0
clickeo en el segundo registro y me sale el alert con el id=0 ( le doy aceptar ) y seguidamente me sale otro alert con el id=1..... y asi sucesivamente a cada registro que hago click sumandose uno tras otro.
Y ahora la pregunta: ¿ Lo que quiero, es como hago para que simpre me muestre el ultimo click que se haga ?
Gracias de antemano. |