Calcolo nel Form lento

GI89

Utente Attivo
21 Apr 2012
36
0
0
Salve ragazzi ho un problema che mi sta portando via molto tempo,ho usato uno script per il calcolo dell'iva in un form,in pratica ho fatto alcune modifiche per renderlo dinamico

HTML:
<script type="text/javascript">
      function selectValue(caller)
      {
        document.getElementById("txtRisultato").value = parseInt(document.getElementById("select1").value) + parseInt(document.getElementById("select2").value) + parseInt(document.getElementById("select3").value);
      }
    </script>
<SCRIPT language="Javascript1.2">
<!--
/////Coded by 16437952/////
function do_it()
{

{
var imp=(document.forms[0].imponibile.value)*1;
var iva=(document.forms[0].iva.value=21);
document.forms[0].totale.value=imp+(imp*(21/100));

{
}
} 
}
//-->
</SCRIPT>
<body onload="do_it();">
<div id="image1" style="position: absolute; overflow: hidden; left: 9px; top: 12px; width: 489px; height: 1082px; z-index: 11"><table width="473" height="146" border="0" >


    <form method="post" action="Invia_ordine500-biglietti.asp?id=1">
  <tr>
    <th height="22" scope="row"><font size="2">quantita:</font></th>
    <td width="67%">
      <select id="select1" name="quantita" onChange="javascript: selectValue(this);">
       
        <option>___________________________</option> <option value="31">500  </option>
        
        </select>
  </td>
  </tr>
  <tr>
    <th height="22" scope="row">opzioni :</th>
    <td>
      <select id="select2" name="verifica"  onChange="javascript: selectValue(this);">
              <option>___________________________</option>
        <option value="0"> Verifica base file  &euro; 0,00 </option>
        <option value="12"> Verifica Professionale &euro; 12,00 </option>
      </select>
</td>
  </tr>
  <tr>
    <th height="22" scope="row"><font size="2">Pagamento:</font></th>
    <td>
      <select id="select3" name="pagamento" onChange="javascript: selectValue(this);">
        <option value="0">Pagamento contanti al ritiro  &euro; 0,00  </option>
        <option value="5">Prelievo domiciliare   &euro; 5,00 </option>
        <option value="10">Bonifico Anticipo C/C  &euro; 0,00 </option>
        <option value="10">Contrassegno con contanti  &euro; 10,00 </option>
      </select>
</td>
  </tr>
      <tr>  <th height="22" scope="row"><font size="2">Imponibile</font></th>
   <td><input name="imponibile" id="txtRisultato" size ="28" /></td>
  </tr>
  <tr>
    <th height="22" scope="row"><font size="2">IVA</font></th>
    <td><input name="iva" id="iva"size ="28" value="21%"type="text" onBlur="do_it();"readonly /></td>
  </tr>
  <tr>
    <th height="22" scope="row"><font size="2">Totale</font></th>
    <td><input type="text" name="totale"onchange="do_it();" size ="28" readonly/></td>
  </tr>
    </form>

Funziona ma il campo "totale" non viene calcolato automaticamente! Il risultato compare solo se clicco dentro il campo text! :incazz: come mai?
 
Ciao,
aggiungi il richiamo alla funzione do_it() anche sulle select

HTML:
<select id="select2" name="verifica"  onChange="selectValue(this);do_it();">
 
Ciao,

controlla anche questo:

document.forms[0].totale.value=imp+(imp*(21/100));

il risultato dell'operazione è 21 / 100 * imp + imp

se calcoli la somma dei value delle select,

select1 = 31 select2 = 0 select3 = 0 imponibile = 31

Risultato 37.51 21 / 100 * 31 + 31

è corretto? o deve tornare 13.02 (imp+imp)*iva/100

Valeria.
 
Ultima modifica:
scusate se apro un topic vecchio ma non volevo fare un nuovo topic uguale a questo inutilmente.

Ho provato la funzione che usa GI89, ma il totale del calcolo è senza decimali, come si fa a mettere anche i decimali??
 

Discussioni simili