Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di Grinder
    Registrato dal
    Mar 2003
    Messaggi
    1,374

    Popolare lo span e decimali

    Ho questo script (ancora imperfetto)
    codice:
    <script language="JavaScript">
    // valore iniziale in euro
    var valore_iniziale = <%=replace((formatnumber(rs_modello("prezzo_offerta"),2)),",",".")%>;
    // totale iniziale
    var totale = valore_iniziale;
    // valuta
    var valuta = "&euro;"
    var vecchio_valore_radio=0;
    var mesi = <%=rs_modello("rate")%>
    
    function modifica(check_box) {
    
    if(totale>=valore_iniziale && check_box!=="") {
    document.all.prezzo.innerHTML = "";
    valore = document.Form_Controllo_Prezzo[check_box].value;
    if(document.Form_Controllo_Prezzo[check_box].checked == true) {
    // somma se selezionato
    totale = (Math.round(totale)+Math.round(valore));
    } else {
    // sottrazione se non è selezionato
    totale = (Math.round(totale)-Math.round(valore));
    }
    }
    // popolo lo span in base al totale modificato
    if(document.all.prezzo) { 
    document.all.prezzo.innerHTML = totale+valuta;
    }
    if(document.all.prezzo2) { 
    document.all.prezzo2.innerHTML = totale+valuta;
    } 
    if(document.all.prezzo3) { 
    document.all.prezzo3.innerHTML = totale+valuta;
    } else {
    return false;
    }
    }
    
    if(document.all.rata) { 
    document.all.rata.innerHTML = (Math.round(totale/mesi))+valuta;
    } else {
    return false;
    }
    }
    
    // ciclo per verificare per aggiungere il valore del radio selezionato 
    // e sottrarre il vecchio valore selezionato uso: <input onclick("verifica_radio(this.name)")
    
       var vecchio_valore_radio = 0;
    
       function setta_vecchio_valore(nome_radio) {
       for (i=0;i<document.Form_Controllo_Prezzo[nome_radio].length;i++){
       if (document.Form_Controllo_Prezzo[nome_radio][i].checked==true)    {
       vecchio_valore_radio = document.Form_Controllo_Prezzo[nome_radio][i].value;
       break
       } else {
       vecchio_valore_radio = 0;
       } 
       }
       }
       
       function verifica_radio(nome_radio) {
       for (i=0;i<document.Form_Controllo_Prezzo[nome_radio].length;i++){
       if (document.Form_Controllo_Prezzo[nome_radio][i].checked==true && totale>=valore_iniziale)    {
       document.all.prezzo.innerHTML = "";
       totale = (Math.round(totale)-Math.round(vecchio_valore_radio));
       totale = (Math.round(totale)+Math.round(document.Form_Controllo_Prezzo[nome_radio][i].value));
       //vecchio_valore_radio = document.Form_Controllo_Prezzo[nome_radio][i].value;
       break
       } 
       }
       // popolo lo span in base al totale modificato
    if(document.all.prezzo) { 
    document.all.prezzo.innerHTML = totale+valuta;
    }
    if(document.all.prezzo2) { 
    document.all.prezzo2.innerHTML = totale+valuta;
    } 
    if(document.all.prezzo3) { 
    document.all.prezzo3.innerHTML = totale+valuta;
    } else {
    return false;
    }
    }
    //-->
    </script>
    Il codice segnato in rosso è una mia prova, ma mi da errore di Return esterno alla funzione(?) e successivamente il valore della variabile "totale" risulta nullo
    Io vorrei poter popolare un secondo span col valore della rata mensile, un valore che dovrebbe variare a seconda del totale...per avere una visione d'insieme QUESTA E' LA MIA PAGINA...ha ancora degli errori, se magari qualcuno può dirmi come fare per correggerli sarebbe molto gradito

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    La segnalazione e' giusta... hai la graffa di chiusura funzione alla riga precedente anche la graffa alla fine del codice aggiunto andrebbe eliminata... se la funzione deve proseguire.

    Non mi pare tanto corretta questa sintassi: !== forse e' meglio sostituirla con quella piu' standard e comprensibile !=

    Inoltre usi ovunque document.all che e' valido solo per IE... meglio document.getElementById("identificatore")

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Utente di HTML.it L'avatar di Grinder
    Registrato dal
    Mar 2003
    Messaggi
    1,374
    Come faccio per mostrare il valore con i decimali? Ho provato ad eliminare Math.round, ma il calcolo non viene nemmeno eseguito!!

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.