Ver Mensaje Individual
  #4 (permalink)  
Antiguo 09/02/2010, 03:19
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: borrar div dinamicamente

He cambiado un poco tu estrategia, tenias un problema al intentar acceder secuencialmente a algo que podia no ser secuencial...

Analizalo si no lo entiendes pregunta, se trata de aprender no de que te lo den hecho.

Quim

Código HTML:
Ver original
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  2. <title>Documento sin t&iacute;tulo</title>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  4. <script language="JavaScript" type="text/JavaScript">
  5.  
  6. var num5=0;
  7. var divs=new Array();
  8.  
  9. function crear5(obj) {
  10.     if(obj.checked) {
  11.              creaObjetos();
  12.     }else{
  13.              borrarTodos();
  14.     }
  15. }
  16.  
  17. function borrarTodos(){
  18.         for (var i=0;i<divs.length;i++) {
  19.             fi5 = document.getElementById('fiel5');
  20.             fi5.removeChild(document.getElementById(divs[i]));
  21.         }
  22.         divs.splice(0,divs.length);
  23. }
  24.  
  25. function borrar5(obj) {
  26.     for (var i=0;i<divs.length;i++){
  27.         if (divs[i]==obj){
  28.             fi5 = document.getElementById('fiel5');  
  29.             fi5.removeChild(document.getElementById(obj));
  30.             break;
  31.         }
  32.         }
  33.     divs.splice(i,1);
  34.     if (divs.length==0) document.getElementById('estilo').checked=false;
  35. }
  36.  
  37. function creaObjetos(){
  38.         if (divs.length <= 9) {
  39.            num5++;
  40.             fi5 = document.getElementById('fiel5');
  41.             contenedor5 = document.createElement('div');
  42.             contenedor5.id = 'div'+num5;
  43.             fi5.appendChild(contenedor5);
  44.             ele5 = document.createElement('select');
  45.             ele5.className = 'impCol';
  46.             ele5.length = 4;
  47.             variable = new Option("Ser","0");
  48.             ele5.options[0] = variable;
  49.             variable = new Option("Ser1","1");
  50.             ele5.options[1] = variable;
  51.             variable = new Option("Ser2","2");
  52.             ele5.options[2] = variable;
  53.             variable = new Option("ser3","3");
  54.             ele5.options[3] = variable;
  55.             contenedor5.appendChild(ele5);
  56.             ele5 = document.createElement('input');
  57.             ele5.type = 'button';
  58.             ele5.value = 'Añadir';
  59.             ele5.name = 'div'+num5;
  60.             ele5.className ='impCol';
  61.             ele5.onclick = function () {creaObjetos();}
  62.             contenedor5.appendChild(ele5);
  63.             ele5 = document.createElement('input');
  64.             ele5.type = 'button';
  65.             ele5.value = 'Borrar';
  66.             ele5.name = 'div'+num5;
  67.             ele5.className ='impCol';
  68.             ele5.onclick = function () {borrar5(this.name);}
  69.             contenedor5.appendChild(ele5);
  70.             ele5 = document.createElement('textarea');
  71.             ele5.className = 'impCol';
  72.             ele5.cols =100;
  73.             ele5.rows   = 4;
  74.             ele5.maxlength =2000;
  75.             contenedor5.appendChild(ele5);
  76.             divs.push('div'+num5);
  77.         }else{
  78.             alert('maximo de 10 servidores');
  79.         }  
  80. }
  81.  
  82.  
  83. </head>
  84. <input name="estilo" id="estilo" onclick="crear5(this)" type="checkbox" value="" />
  85. <div id="fiel5"></div>
  86. </body>
  87. </html>

Última edición por quimfv; 09/02/2010 a las 03:22 Razón: elimino var num89=0;