Ver Mensaje Individual
  #27 (permalink)  
Antiguo 29/05/2009, 23:40
Avatar de abimaelrc
abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Formulario Dinámico en javascript

Tipo he parido este programa, estoy en dolores de parto todavia. Aqui tienes espero que te guste.

Código PHP:
<html xmlns="http://www.w3.org/1999/xhtml">
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<
title>Calc</title>

<
script type="text/javascript">
<!--
num=0;
function 
crear(obj) {
  
num++;
  
fi document.getElementById('fiel'); // 1
  
contenedor document.createElement('div'); // 2
  
contenedor.id 'div'+num// 3

  
fi.appendChild(contenedor); // 4

  
ele document.createElement('input'); // 5
  
ele2 document.createElement('input'); // 5
  
ele3 document.createElement('input'); // 5
  
ele4 document.createElement('input'); // 5

  
ele.type 'text'// 6
  
ele.name 'item[]'// 6
  
ele.size 5
  
contenedor.appendChild(ele); // 7
  
  
ele2.type 'text'// 6
  
ele2.name 'desc[]'// 6
  
ele2.size 100
  
contenedor.appendChild(ele2); // 7
  
  
ele3.type 'text'// 6
  
ele3.name 'precio[]'// 6
  
ele3.size 7;
  
ele3.onkeyup = function(){addHiddenNeto(this.value)}
  
ele3.onfocus = function(){setHiddenNeto(this.value)}
  
contenedor.appendChild(ele3); // 7



  
ele4.type 'button'// 6
  
ele4.value 'Borrar'// 8
  
ele4.name 'div'+num// 8
  
ele4.id num;
  
ele4.onclick = function () {borrar(this.namethis.parentNode)} // 9
  
contenedor.appendChild(ele4); // 7
}

function 
borrar(objgetP) {
    
getP.childNodes[2].value;
    if(
== ""){0;}
    
document.form1.neto.value parseFloat(document.form1.neto.value)-parseFloat(P);
    
fi document.getElementById('fiel'); // 1 
    
fi.removeChild(document.getElementById(obj)); // 10
    
setNeto();
}
function 
addHiddenNeto(n){
    if(
n==""){n=0;}
    
document.form1.neto.value document.form1.neto.value-document.form1.hiddenNeto.value;
    
document.form1.hiddenNeto.value n;
    
document.form1.neto.value roundNumber(eval(parseFloat(document.form1.neto.value)+parseFloat(document.form1.hiddenNeto.value)),2);
    
setNeto();
}
function 
setHiddenNeto(n){
    if(
n==""){n=0;}
    
document.form1.hiddenNeto.value n;
    
setNeto();
}
function 
setNeto(){
    if(
document.form1.descuento.value == ""){document.form1.descuento.value 0;}
    
document.form1.tsi.value roundNumber(parseFloat(document.form1.neto.value)-parseFloat(document.form1.descuento.value),2);
    
//Se tiene que calcular por 0.19 ya que la matematica para 19% es esa.
    
document.form1.tci.value roundNumber(parseFloat(document.form1.tsi.value)+(parseFloat(0.19) * parseFloat(document.form1.tsi.value)),2);
}
function 
roundNumber(rnumrlength) { // Arguments: number to round, number of decimal places
    
return Math.round(rnum*Math.pow(10,rlength))/Math.pow(10,rlength);
}
--> 
</script>

<style type="text/css">
<!--
body {
    background-color: #797979;
}
.Estilo4 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: bold; color: #999999; }
.Estilo14 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; color: #666666; font-weight: bold; }
.Estilo45 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-weight: bold; color: #333333; }
.Estilo49 {font-family: Verdana, Arial, Helvetica, sans-serif}

.Estilo36 {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 18px;
    color: #000000;
}
.Estilo38 {font-size: 12px}
.Estilo48 {color: #999999}
.Estilo4 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 16px; font-weight: bold; color: #999999; }
-->
</style>

</head>
<body>

<form name="form1" method="post" action="algo.php">
<input type="hidden" name="hiddenNeto" value="0">
<table width="960" height="415" border="0" align="center" bgcolor="#FFFFFF">
  <tr>
    <td height="24">&nbsp;</td>
    <td height="24" colspan="9">&nbsp;</td>
    <td width="155" rowspan="2"><div align="center"></div></td>
  </tr>
  
  <tr>
    <td height="107">&nbsp;</td>
    <td height="107" colspan="9">&nbsp;</td>
  </tr>
  <tr>
    <td width="16" height="0"></td>
    <td colspan="10"><table width="881" border="0" align="center">
      <tr>
        <td width="13">&nbsp;</td>
        <td width="58"><div align="center" class="Estilo4">Item</div></td>
        <td width="628"><div align="center" class="Estilo4">Descripci&oacute;n</div></td>
        <td width="82"><div align="center" class="Estilo4">Precio</div></td>
        <td width="78"><span class="Estilo4">Borrar</span></td>
      </tr>
      <tr>
        <td colspan="5"><fieldset id="fiel"></fieldset><input name="button" type="button" onClick="crear(this)" value="Crear" /></td>
      </tr>
    </table></td>
  </tr>
  
  
  <tr>
    <td height="25" rowspan="5">&nbsp;</td>
    <td width="86" rowspan="5">&nbsp;</td>
    <td width="102" rowspan="5">&nbsp;</td>
    <td width="102" rowspan="5">&nbsp;</td>
    <td width="102" rowspan="5">&nbsp;</td>
    <td width="102" rowspan="5">&nbsp;</td>
    <td width="102" rowspan="5">&nbsp;</td>
    <td width="113">&nbsp;</td>
    <td colspan="2">
      <label>      </label>
      <div align="center">
        <input name="fin" type="checkbox" id="fin" onClick="calcular(this)" value="entregado">
      </div>      </td>
    <td class="Estilo45">Fin de proceso </td>
  </tr>
  <tr>
    <td width="113"><div align="right">
      <input name="Calcular" type="button" value="Calcular" onclick="setNeto()" />
    </div></td>
    <td colspan="2" class="Estilo45">Neto</td>
    <td>
           <label>
        <input name="neto" type="text" id="neto" value="0" readonly>
        </label>    
    </td>
  </tr>
  <tr>
    <td width="113">&nbsp;</td>
    <td colspan="2" class="Estilo45">Desc</td>
    <td><input name="descuento" type="text" id="descuento" onkeyup="setNeto()"></td>
  </tr>
  <tr>
    <td width="113">&nbsp;</td>
    <td colspan="2" class="Estilo45">TSI</td>
    <td><input name="tsi" type="text" id="tsi" readonly></td>
  </tr>
  <tr>
    <td width="113">&nbsp;</td>
    <td colspan="2" class="Estilo45">TCI</td>
    <td><input name="tci" type="text" id="tci" readonly></td>
  </tr>
  <tr>
    <td height="38">&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
    <td colspan="2">&nbsp;</td>
    <td><input type="submit" name="button2" id="button" value="Registrar" /></td>
  </tr>
</table>
</form>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
</body>
</html>