Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125

    Strano arrotondamento decimale

    Ciao a tutti.

    Ho questa funzione javascript che esegue il calcolo tra entrate ed uscite restituendo il saldo aggiornato:

    codice:
    function calcola(frmObj, id)
    
    {
      if (frmObj["SALDO-" + (id-1)])
      
      {
      
      frmObj["SALDO-" + id].value = parseFloat(frmObj["ENTRATE-" + id].value) -
                                    parseFloat(frmObj["USCITE-" + id].value) +
                                    parseFloat(frmObj["SALDO-" + (id-1)].value);  
                                    
      frmObj["SALDO-" + id].value = parseFloat(frmObj["SALDO-" + id].value).toFixed(2);                                  
      } 
      
      else
      
      {
      
      frmObj["SALDO-" + id].value = parseFloat(frmObj["ENTRATE-" + id].value) -
                                    parseFloat(frmObj["USCITE-" + id].value); 
                                    
      frmObj["SALDO-" + id].value = parseFloat(frmObj["SALDO-" + id].value).toFixed(2); 
                                        
      }
    }
    
    ...
    
    <input type="text" name="ENTRATE-221" size="5" value="442,23" onblur="calcola(this.form, 221)">
    <input type="text" name="USCITE-221" size="5" value="0" onblur="calcola(this.form, 221)">
    <input type="text" name="SALDO-221" size="5" value="442,23" readonly>
    Sapreste dirmi perchè quando viene eseguito l'evento onblur dalla funzione calcola mi vengono tagliate ed arrotondate le cifre decimali dopo la virgola ?

    Cioè 442,23 diventa 442,00... perchè?

    Grazie

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Potrebbe essere perché javascript non "ammette" nei calcoli la virgola prova lo script ad inserire il punto . (tipo 442.23) se arrotonda correttamente basta che fai un repalce sulla virgola, oppure non autorizzi immissione sul input.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di Mizushi
    Registrato dal
    Aug 2005
    Messaggi
    1,125
    Hai ragione, grazie.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.