Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/06/2009, 05:29
Avatar de Adler
Adler
Colaborador
 
Fecha de Ingreso: diciembre-2006
Mensajes: 4.671
Antigüedad: 18 años, 2 meses
Puntos: 126
Respuesta: Consulta Crear mas Campos

Hola

A ver si es esto lo que necesitas

Código javascript:
Ver original
  1. <script type="text/javascript">
  2. function adicionarFila(){
  3. var cont = document.getElementById("cont");
  4. var filas = document.getElementById("filas");
  5. cont.setAttribute("value", parseInt(cont.value,0)+1);
  6. var tabla = document.getElementById("contenido").tBodies[0];
  7. var fila = document.createElement("TR");
  8. fila.setAttribute("align","center");
  9.  
  10. var celda1 = document.createElement("TD");
  11. var codigo = document.createElement("INPUT");
  12. codigo.setAttribute("type","text");
  13. codigo.setAttribute("size","8");
  14. codigo.setAttribute("maxlength","20");
  15. codigo.setAttribute("name","codigo" + cont.value);
  16. celda1.appendChild(codigo);
  17.  
  18. var celda2 = document.createElement("TD");
  19. var sel = document.createElement("SELECT");
  20. sel.setAttribute("size","1");
  21. sel.setAttribute("name","sel" + cont.value);
  22. opcioncur = document.createElement("OPTION");
  23. opcioncur.innerHTML = '';
  24. opcioncur.value = '';
  25. sel.appendChild(opcioncur);
  26.  
  27. opcion1 = document.createElement("OPTION");
  28. opcion1.innerHTML = "este Select depende de lo que";
  29. opcion1.value = "este Select depende de lo que";
  30. sel.appendChild(opcion1);
  31.  
  32. opcion2 = document.createElement("OPTION");
  33. opcion2.innerHTML = "se ponga en el anterior campo";
  34. opcion2.value = "se ponga en el anterior campo";
  35. sel.appendChild(opcion2);
  36.  
  37. celda2.appendChild(sel);
  38.  
  39. var celda3 = document.createElement("TD");
  40. var valorA = document.createElement("INPUT");
  41. valorA.setAttribute("type","text");
  42. valorA.setAttribute("size","1");
  43. valorA.setAttribute("maxlength","3");
  44. valorA.setAttribute("name","valorA" + cont.value);
  45. celda3.appendChild(valorA);
  46.  
  47. var celda4 = document.createElement("TD");
  48. var valorB = document.createElement("INPUT");
  49. valorB.setAttribute("type","text");
  50. valorB.setAttribute("size","1");
  51. valorB.setAttribute("maxlength","3");
  52. valorB.setAttribute("name","valorB" + cont.value);
  53. celda4.appendChild(valorB);
  54.  
  55. var celda5 = document.createElement("TD");
  56. var valorC = document.createElement("INPUT");
  57. valorC.setAttribute("type","text");
  58. valorC.setAttribute("size","1");
  59. valorC.setAttribute("maxlength","3");
  60. valorC.setAttribute("name","valorC" + cont.value);
  61. //onfocus="fc(this)"
  62. celda5.appendChild(valorC);
  63.  
  64. var celda6 = document.createElement('TD');
  65. var boton = document.createElement('INPUT');
  66. boton.setAttribute('type','button');
  67. boton.setAttribute('value','borrar');
  68. boton.onclick=function(){borrarFila(this);}
  69. celda6.appendChild(boton);
  70.  
  71. fila.appendChild(celda1);
  72. fila.appendChild(celda2);
  73. fila.appendChild(celda3);
  74. fila.appendChild(celda4);
  75. fila.appendChild(celda5);
  76. fila.appendChild(celda6);
  77.  
  78. tabla.appendChild(fila);
  79. }
  80. function borrarFila(button){
  81. var fila = button.parentNode.parentNode;
  82. var tabla = document.getElementById('contenido').getElementsByTagName('tbody')[0];
  83. tabla.removeChild(fila);
  84. }
  85.  
  86.  
  87. function fc(campo) {
  88.     var n=parseInt(campo.name.substr(6),10);
  89.     var    a=campo.form.elements["valorA"+n];
  90.     var    b=campo.form.elements["valorB"+n];
  91.     var na=parseFloat(a);
  92.     var nb=parseFloat(b);
  93.     if (isNaN(na)) { na=0; }
  94.     if (isNaN(nb)) { nb=0; }
  95.     campo.value=na+nb;
  96.     campo.blur();
  97. }
  98. </script>
  99. </head>
  100. <body onLoad="adicionarFila()">
  101. <Form name="detalle" action="ej.asp" method="get">
  102. <input name="cont" type="hidden" id="cont" value="0" >
  103. <input name="filas" type="hidden" id="filas" value="" >
  104. <table align=center width=20% cellpadding=0 cellspacing=0 id="contenido" border="1">
  105. <tr align="center">
  106. <td>codigo</td>
  107. <td>Select dependiente de Codigo</td>
  108. <td>A +</td>
  109. <td>B =</td>
  110. <td>C</td>
  111. <td>&nbsp;</td>
  112. </tr>
  113. </table>
  114. <table align=center width=20% cellpadding=0 cellspacing=0 border="1">
  115. <tr>
  116. <td>&nbsp;</td>
  117. </tr>
  118. <tr align="center">
  119. <td align="CENTER"><input name="enviar" type="submit" id="enviar" value="enviar" onClick="filas.value=cont.value, cont.value=0">
  120. <input name="nueva_fila" type="button" id="nueva_fila" value="nueva fila" onClick="adicionarFila()"></td>
  121. </tr>
  122. </table>
  123. </form>

Suerte
__________________
Los formularios se envían/validan con un botón Submit
<input type="submit" value="Enviar" style="background-color:#0B5795; font:bold 10px verdana; color:#FFF;" />