Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833

    Come posso scrivere questo controllo?

    Ciao a tutti, volevo chiedervi come posso scrivere un controllo in un solo punto invece che metterlo su ogni campo? Spiego la situazione, in pratica ho un po' di campi di input
    e devo fare in modo che quando si passa sopra venga effettuato il totale. Ora li gestivo cosi:

    Es per il campo totale 7 che deve sommare i 13 campi:

    <input type="text" size="5" maxlength="6" OnKeyPress="return keyCheck(event, this)"

    onkeyup="total7.value=Number(rimb17.value)+Number( rimb27.value)+Number(rimb37.value)+Number(rimb47.v alue)+ Number(rimb57.value)+Number(rimb67.value)+Numbe(ri mb77.value)+Number(rimb87.value)+Number(rimb97.val ue)+ Number(rimb107.value)+Number(rimb117.value)+Number (rimb127.value)+Number(rimb137.value);"

    name="rimb77" value="<?php echo($rimb77);?>" >

    ora ho provato a mettere solo onkeyup="total7();" ,pero' non so scrivere la funzione total7

    <script language="javascript" type="text/javascript">
    function total7()
    {
    total7.value=Number(rimb17.value)+Number(rimb27.va lue)+Number(rimb37.value)+Number(rimb47.value)+ Number(rimb57.value)+Number(rimb67.value)+Number(r imb77.value)+Number(rimb87.value)+Number(rimb97.va lue)+ Number(rimb107.value)+Number(rimb117.value)+Number (rimb127.value)+Number(rimb137.value);
    }
    </script>

    Soluzioni? ciao, grazie

  2. #2
    Ecco una soluzione (per 7 campi, ma puoi metterne nmila)
    Codice PHP:
    <html>
    <
    head>
    <
    title>Test</title>
    <
    script type="text/javascript">
    var 
    arNumeri = new Array(0,0,0,0,0,0,0); // tanti zeri quanti sono i campi
    function controlla(oggettonumero) {
        var 
    nTotale 0;
        
    arNumeri[numero] = Number(oggetto.value);
        for (var 
    i=0i<arNumeri.lengthi++)
            
    nTotale += arNumeri[i];
        
    document.getElementById("totale").value nTotale
    }
    </script>
    </head>
    <body>
    <form name="miaform">

    Campo 1 : <input type="text" name="c1" onkeyup="controlla(this,0)" />

    Campo 2 : <input type="text" name="c2" onkeyup="controlla(this,1)" />

    Campo 3 : <input type="text" name="c3" onkeyup="controlla(this,2)" />

    Campo 4 : <input type="text" name="c4" onkeyup="controlla(this,3)" />

    Campo 5 : <input type="text" name="c5" onkeyup="controlla(this,4)" />

    Campo 6 : <input type="text" name="c6" onkeyup="controlla(this,5)" />

    Campo 7 : <input type="text" name="c7" onkeyup="controlla(this,6)" />



    Totale :<input type="text" id ="totale" name="totale" value="0" />
    </form>
    </body>
    </html> 
    Prova!
    &Egrave; bellino vedere il totale che cambia mano a mano che scrivi!

    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Grazie, sembra funzionare perfettamente.

    Mi hai salvato, i campi che devo gestire (per adesso) sono 130, pensa se avessi dovuto
    aggiungere un campo, avrei dovuto modificare 130 script VVoVe:

    Ciao, grazie ancora

  4. #4
    Apper&ograve;
    Cambia lo script cos&igrave;, altrimenti ti si incrociano gli occhi, a fare 130 zeri!:
    Codice PHP:
    <script type="text/javascript">
    var 
    quanticampi 130// qua indichi quanti sono i campi (puoi abbondare)
    var arNumeri = new Array(); 
    for (var 
    k=0k<=quanticampik++)
        
    arNumeri.push(0);
    function 
    controlla(oggettonumero) {
        var 
    nTotale 0;
        
    arNumeri[numero] = Number(oggetto.value);
        for (var 
    i=0i<arNumeri.lengthi++)
            
    nTotale += arNumeri[i];
        
    document.getElementById("totale").value nTotale
    }
    </script> 
    HTH

    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  5. #5
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    833
    Meglio la precedente, mi sono spiegato male io,
    gli zeri sono 13 e i totali sono dieci, quindi ho dovuto fare dieci calcolatotali
    con tredici zeri ciascuna.
    Per gli occhi sto vedendo il video in stile matrix a quest'ora del giorno.

    Ciao e grazie anche per il secondo post.

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.