Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/11/2007, 12:33
rProgged
 
Fecha de Ingreso: agosto-2004
Mensajes: 131
Antigüedad: 19 años, 9 meses
Puntos: 2
Re: Copiar filas entre tablas

Hola JavierB,

El código me ha ido de maravillas, salvo un detalle...mira, mi idea es una tabla con alumnos que serán asignados a un grupo, cada fila tiene un checkbox, así seleccionas todos los checkbox de las filas que quieras pasar y luego presionas un botón y listo, en ambas direcciones: desde los alumnos al grupo y desde el grupo a los alumnos. Pasar las filas resulta bien salvo que siempre pasa sólo 1 fila , y no todas las seleccionadas. El código que uso es el siguiente:

Código:
function cambiarFila( formOrigen, tblOrigen, tblDestino, bgColor ) {
var cont = 0;
for ( i=0; i<formOrigen.elements.length; i++ ) {
//primero reviso que se haya seleccionado un registro
if ( formOrigen.elements[i].type == "checkbox" && formOrigen.elements[i].checked == true ) {
var tblDestino = document.getElementById(tblDestino);
var tblOrigen = document.getElementById(tblOrigen);
				
var filas = tblOrigen.getElementsByTagName('tr');
var fila = formOrigen.elements[i].parentNode.parentNode; // para llegar al tr que contiene al td que contiene al checkbox =)
						
var h = 0;
while ( ele = tblOrigen.getElementsByTagName('tr')[h] ) {
if (ele == fila){ numFila=h;}
h++;
}
		
var copia = filas[numFila].cloneNode(true);
//quito la fila de la tabla de origen
tblOrigen.deleteRow(numFila);
//inserto la fila en la tabla de destino
tblDestino.appendChild(copia);
cont++;
}
}
if ( cont == 0 ) {
alert("Debe seleccionar al menos un registro");
}
}
La verdad no tengo idea por qué pueda estar pasando esto, en el código no veo nada que influya en la ejecución del ciclo for. Quizás tengas alguna idea que me pueda ayudar.

Una vez más, muchas gracias por la ayuda.

Saludos,

Rodrigo