Ver Mensaje Individual
  #3 (permalink)  
Antiguo 12/06/2008, 06:38
papalin
 
Fecha de Ingreso: junio-2008
Mensajes: 9
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: problemas con formularios dinamicos

Es cierto, tenes razon, disculpen, lo que pasa es que no sabia donde postearlo, yo creo que el codigo javascript no tiene inconvenientes, de todas formas se los muestro y me dicen que opinan, el problema quizas puede ser en la forma en que llamo a las variables aunque no creo que sea eso porque en otra prueba que hice me funciona perfectamente, el codigo javascript no lo he modificado practicamente de uno a otro.

//---------------------------------------------------------------------------------------------
//Generacion de formulario dinamicos, agregando los criterios de seleccion
//---------------------------------------------------------------------------------------------

var cantidad = 0;
var orden=1;

//esta funcion agrega la condicion "AND" u "OR" que desea el usuario, despues llama a la funcion clonar nodos para agregar el nuevo criterio

function agregarHijo()
{
cantidad++;
document.getElementById('fs').appendChild(document .createElement('br'));
var nuevohijo = document.createElement('select');
nuevohijo.name = "opcion"+cantidad;
var op1 = new Option("AND", "AND");
var op2 = new Option("OR", "OR");
nuevohijo.appendChild(op1);
nuevohijo.appendChild(op2);
document.getElementById('fs').appendChild(nuevohij o);
document.getElementById('fs').appendChild(document .createElement('br'));
clonarNodos();
}

//esta funcion elimina un criterio agregado, tiene el for porque debe eliminar lineas en blanco y los demas nodos que se agregaron

function eliminarHijo()
{
if (cantidad!=0)
{
for (i=0; i<11; i++)
{
var nuevohijo=document.getElementById('fs');
nuevohijo.removeChild(nuevohijo.lastChild);
}
cantidad--;
}
}

function eliminarTodo()
{
while (cantidad!=0)
{
for (i=0; i<11; i++)
{
var nuevohijo=document.getElementById('fs');
nuevohijo.removeChild(nuevohijo.lastChild);
}
cantidad--;
}
}

//esta funcion lo que hace es clonar el nodo en el que se encuantran los criterios de seleccion

function clonarNodos()
{
document.getElementById('fs').appendChild(document .createElement('br'));
var id=document.getElementById("campo");
var nuevos=id.cloneNode(true);
nuevos.style.id='campo'+cantidad;
nuevos.name='campo'+cantidad;
id=document.getElementById("fs");
id.appendChild(nuevos);
espaciar();
var id=document.getElementById("comparador");
var nuevos=id.cloneNode(true);
nuevos.style.id='comparador'+cantidad;
nuevos.name='comparador'+cantidad;
id=document.getElementById("fs");
id.appendChild(nuevos);
espaciar();
var id=document.getElementById("texto");
var nuevos=id.cloneNode(true);
nuevos.style.id='texto'+cantidad;
nuevos.name='texto'+cantidad;
nuevos.value="";
id=document.getElementById("fs");
id.appendChild(nuevos);
document.getElementById('fs').appendChild(document .createElement('br'));
document.getElementById('fs').appendChild(document .createElement('br'));
}


function espaciar() {
var espacio = document.createTextNode("\u00a0");
document.getElementById("fs").appendChild(espacio) ;
}