Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/03/2010, 09:15
Avatar de SergeMedina
SergeMedina
 
Fecha de Ingreso: septiembre-2007
Ubicación: Guadalajara, Jalisco
Mensajes: 459
Antigüedad: 17 años, 2 meses
Puntos: 20
Respuesta: Problema, agregar o borrar opciones con jquery

El problema es que cuando tienes seleccionado varios elementos del objeto select, $('select option:selected') te devuelve un array. Necesitas hacer un each para poder recorrer el array e insertarlos en el ul.

Al principio cuando se carga la pagina a.delete no existe en el DOM, por lo que necesitas buscar los elementos nuevos, esto lo logras con la funcion live de jquery, que le añade eventos a elementos aun cuando estos se agreguen al DOm despues de que la pagina haya sido cargada.

Código Javascript:
Ver original
  1. $(function(){
  2.        $("#add").click(function(){
  3.           $('#select1 option:selected').each(function(){
  4.                var nombre = $(this).text();  
  5.                var valor = $(this).val();
  6.                $("#destino").append("<li id='"+valor+"'>"+nombre+" <a class='delete' href='#'>x</a></li>");
  7.                $("#select1 option:selected").remove().appendTo("#select2");
  8.           });
  9.           return false;
  10.        });
  11.  
  12.       $("a.delete").live('click',function(){
  13.         var parent = $(this).parent();
  14.         $("#select2").find("option[value='"+parent.attr("id")+"']").remove().appendTo("#select1");
  15.         parent.remove();
  16.         return false;
  17.       });
  18. });
__________________
I see dead pixels