[Jquery-Es] Detener burbujeo de eventos

Choan Gálvez choan.galvez en gmail.com
Vie Ago 3 01:36:53 PDT 2007


Hola.

On 03/08/2007, at 10:31, Santiago Martín-Cleto wrote:

> Hola a todos,
>
> Estoy escribiendo un script para manipular una tabla de datos que  
> permita
> añadir. modificar, ordenar y borrar filas en cliente. La cuestión  
> es que no
> logro detener el burbujeo de eventos cuando añado una nueva fila (que
> incluye controles de editar y borrar), ya que hago una recursión  
> para que se
> detecten esos nuevos controles.
>
> Lo veréis mejor con el código:
>
> function initManageDataTables(){
>                 $(".add, .order, .edit, .set, .delete").bind("click",
> function(){
>                     manageDataTables($(this));
>                 });
> }
>
> function manageDataTables(handler){
>
>                 var action = handler.attr("class");
>
>                 switch (action) {
>
>                     case "add":
>                           // Crea una nueva fila e invoca a la  
> función init
>                           initManageDataTables;
>
>                     case "edit":
>                           ...........
>                     case "order":


function bla() {
	$('#unselector, otro.selector').bind('click, function(e) {
		// haces cositas
		// y usas una de las siguientes líneas, según necesites
		e.stopPropagation(); // detiene el burbujeo
		e.preventDefault(); // cancela el comportamiento por defecto
		return false; // ambas cosas
	});
}

Salud.
-- 
Choan Gálvez
<choan.galvez en gmail.com>
<http://choangalvez.nom.es/>





Más información sobre la lista de distribución Jquery-Es