Hola!, os esplico mi problema.
Tengo un formulario y en el un checkbox:
Código HTML:
<input name="estilo" onclick="num89++;crear5(this)" type="checkbox" value="" />
Al hacer click en el llamo a crear 5 y esta funcion lo que hace es:
1.- comprueba que num89 sea impar, para saber que el check esta checkeado.
2.-crea un select, un text area un boton añadir y un boton borrar en un div llamado fiel5.
3.- en el caso de que num89 sea par (osea se deselecciona el checkbox), se borran los nuevos elementos.
El problema es solo el paso 3, el resto funciona.
Código:
function crear5(obj) {
if(num89%2 == 1) { /*paso 1*/
if (num5 <= 9) {
num5++;
fi5 = document.getElementById('fiel5'); /*paso 2*/
contenedor5 = document.createElement('div');
contenedor5.id = 'div'+num5;
fi5.appendChild(contenedor5);
ele5 = document.createElement('select');
ele5.className = 'impCol';
ele5.length = 4;
variable = new Option("Ser","0");
ele5.options[0] = variable;
variable = new Option("Ser1","1");
ele5.options[1] = variable;
variable = new Option("Ser2","2");
ele5.options[2] = variable;
variable = new Option("ser3","3");
ele5.options[3] = variable;
contenedor5.appendChild(ele5);
ele5 = document.createElement('input');
ele5.type = 'button';
ele5.value = 'Añadir';
ele5.name = 'div'+num5;
ele5.className ='impCol';
ele5.onclick = function () {num89=1;crear5(this);num89=2}
contenedor5.appendChild(ele5);
ele5 = document.createElement('input');
ele5.type = 'button';
ele5.value = 'Borrar';
ele5.name = 'div'+num5;
ele5.className ='impCol';
ele5.onclick = function () {borrar5(this.name)}
contenedor5.appendChild(ele5);
ele5 = document.createElement('textarea');
ele5.className = 'impCol';
ele5.cols =100;
ele5.rows = 4;
ele5.maxlength =2000;
contenedor5.appendChild(ele5);
}else{
alert('maximo de 10 servidores');
}
}else if(num89%2 == 0) { /*paso 3 donde se encuentra el error*/
var i ;
for (i=0;i<=num5;i++) {
fi5 = document.getElementById('fiel5');
fi5.removeChild(document.getElementById('div'+num5));
}
}
}
function borrar5(obj) {
num5--;
fi5 = document.getElementById('fiel5');
fi5.removeChild(document.getElementById(obj));
}
Supongo que debo estar haciendo algo mal o muy mal, pues en js soy bastante novato y ando algo perdido.
Gracias de antemano por la ayuda!