Javascript: Calcular Desconto

by Felipe Franco

HTML

<p>Calcular valor do desconto:</p>
<table cellpadding="0" cellspacing="0" border="0">
    <tr>
      <td class="dir">Campo Valor:</td>
      <td><input type="text" name="valor1" id="valor1" onblur="calcValor()" /></td>
    </tr>
<tr>
              <td class="dir">Valor Total 20%:</td><td><input type="text" name="total20" id="total20" value="0.00" /></td>
</tr>

    <tr>
      <td class="dir">Valor Total 50%:</td><td><input type="text" name="total50" id="total50" value="0.00" /></td>

    <tr>    
        <tr>
      <td class="dir">Valor Total 10%:</td><td><input type="text" name="total10" id="total10" value="0.00" /></td>

</tr> 
        <tr>
      <td class="dir">Valor Total 5.5%:</td><td><input type="text" name="total55" id="total55" value="0.00" /></td>

</tr> 

        <tr>
      <td class="dir">Valor Total 1%:</td><td><input type="text" name="total1" id="total1" value="0.00" /></td>

</tr>
        <tr>
      <td class="dir">Somatoria:</td><td><input type="text" name="vtotal" id="vtotal" value="0.00" /></td>

</tr>
</table>

CSS

table tr td {
    padding: 5px;
}
table tr td.dir {
    padding-right: 15px;
    text-align: right;
    width: 120px;
}

JavaScript

function calcValor(){

    
    // valor lĂ­quido
    var VTOTALLIQUIDO = parseFloat(document.getElementById("valor1").value);

		// desconto em porcentagem
  
		var PDESCONTO50 = parseFloat( ( VTOTALLIQUIDO * 50 ) / 100 );
    var PDESCONTO20 = parseFloat( ( VTOTALLIQUIDO * 20 ) / 100 );
    var PDESCONTO10 = parseFloat( ( VTOTALLIQUIDO * 10 ) / 100 );
    var PDESCONTO55 = parseFloat( ( VTOTALLIQUIDO * 5.5 ) / 100 );
    var PDESCONTO1 = parseFloat( ( VTOTALLIQUIDO * 1 ) / 100 );
   

		// desconto em valor


    var TOTAL50 = parseFloat(VTOTALLIQUIDO) - parseFloat(PDESCONTO50);
        var TOTAL20 = parseFloat(VTOTALLIQUIDO) - parseFloat(PDESCONTO20);
                var TOTAL10 = parseFloat(VTOTALLIQUIDO) - parseFloat(PDESCONTO10);
                                var TOTAL55 = parseFloat(VTOTALLIQUIDO) - parseFloat(PDESCONTO55);
                                 var TOTAL1 = parseFloat(VTOTALLIQUIDO) - parseFloat(PDESCONTO1);
 var VTOTAL = parseFloat(  TOTAL50 + TOTAL20 + TOTAL10 + TOTAL55 + TOTAL1);                                
//var VTOTAL = parseFloat(VTOTAL);

    document.getElementById("total50").value = 'R$ ' + TOTAL50.toFixed(2);
       document.getElementById("total20").value = 'R$ ' + TOTAL20.toFixed(2);
              document.getElementById("total10").value = 'R$ ' + TOTAL10.toFixed(2);
                            document.getElementById("total55").value = 'R$ ' + TOTAL55.toFixed(2);
                                                        document.getElementById("total1").value = 'R$ ' + TOTAL1.toFixed(2);
                                                        document.getElementById("vtotal").value = 'R$ ' + VTOTAL.toFixed(2);
}