Ver Mensaje Individual
  #13 (permalink)  
Antiguo 09/12/2009, 00:53
Avatar de neodani
neodani
 
Fecha de Ingreso: marzo-2007
Mensajes: 1.811
Antigüedad: 17 años, 2 meses
Puntos: 20
Respuesta: Crear y remover inputs

Cita:
Iniciado por zerokilled Ver Mensaje
el elemento que usas para eliminar la fila tienes que agregarla al elemento clonado.
Código:
var clon = elemento.cloneNode(true);
clon.appendChild(elemento_borrar);
luego tienes que arreglar la funcion borrar para que elimine la fila, no el boton como tal.
No lo consigo, misma situación aun cambiando las cosas...

Código html:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
  2. <html>
  3. <title>Crear y remover inputs</title>
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  5. body, td, th, div, p {
  6. color:#000000;
  7. font-family:"Lucida Grande",Verdana,Arial,Helvetica,sans-serif;
  8. font-size:small;
  9. }
  10. input {
  11. margin:0.3em;
  12. }
  13. a.removelink {
  14. background:transparent url(delete.png) no-repeat scroll 4px 0;
  15. color:#999999;
  16. font-size:0.9em;
  17. padding:1px 0 1px 24px;
  18. text-decoration:none;
  19. }
  20. a.addlink {
  21. background:transparent url(add.png) no-repeat scroll left top;
  22. color:#999999;
  23. font-size:0.9em;
  24. padding:1px 0 1px 20px;
  25. text-decoration:none;
  26. cursor:pointer;
  27. }
  28. <script type="text/javascript">
  29. <!--
  30. num=0;
  31. function crear(obj) {
  32.  num++;
  33.  fi = document.getElementById('productos');
  34.  contenedor = document.createElement('div');
  35.  contenedor.id = 'div'+num;
  36.  fi.appendChild(contenedor);
  37.  
  38.  // boton eliminar
  39.  ele = document.createElement('a');
  40.  ele.href = '#';
  41.  ele.name = 'div'+num;
  42.  ele.onclick = function () {borrar(this.name)}
  43.  ele.className = 'removelink';
  44.  ele.innerHTML = 'Eliminar';
  45.  fi.appendChild(ele);
  46.  
  47.  var container = document.getElementById('productos');
  48.  container.appendChild(container.firstChild.cloneNode(true));
  49.  
  50.  var clon = elemento.cloneNode(true);
  51.  clon.appendChild(ele);
  52. }
  53. function borrar(obj) {
  54.  fi = document.getElementById('productos');
  55.  fi.removeChild(document.parentNode);
  56. }
  57. -->
  58.  
  59. </head>
  60. <form method="post" action="#">
  61. <div><a title="Añadir otra fila" class="addlink" onclick="crear(this)">Añadir</a></div>
  62. <div id="productos"><p>
  63. <input type="text" value="" size="5" name="cantidad"/>
  64. <input type="text" value="" size="30" name="descripcion"/>
  65. <input type="text" value="" size="5" name="precio"/>
  66. <input type="text" value="" size="5" name="total"/></p>
  67. <div>
  68. </form>
  69. </body>
  70. </html>

Muchas gracias de antemano!