Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Calcolo Totale

  1. #1
    Utente di HTML.it L'avatar di antosto
    Registrato dal
    Nov 2002
    Messaggi
    112

    Calcolo Totale

    Ciao a Tutti

    Ho una tabella con quattro colonne:
    1. descrizione
    2. importo per persona
    3. numero persone
    4. totale

    Nella quarta colonna vorrei calcolarmi, sia che modifico la 2 o la 3, il nuovo totale.

    Poi vorrei fare un totale generale, ovvero la somma di tutti i totali.

    Tutto questo in automatico.
    E' fattibile???


    codice:
    <%for i=1 to 10%>
      <tr>
        <td width="60%" align="left" class="recordV"><input type="text" name="Descrizione<%=i%>" id="Descrizione<%=i%>" style="font-family: Tahoma; font-size: 8 pt" size="65" maxlength="60"></td>
        <td width="22%" align="center" class="recordV">€. <input type="text" name="ImpPerPersona<%=i%>" id="ImpPerPersona<%=i%>" style="font-family: Tahoma; font-size: 8 pt; text-align: right" size="10" value="0,00"></td>
        <td width="8%" align="center" class="recordV"><input type="text" name="N<%=i%>" id="N<%=i%>" style="font-family: Tahoma; font-size: 8 pt" size="2" value="<%=partecipanti%>"></td>
        <td width="10%" align="center" class="recordV"></td>
      </tr>
    <%next%>

  2. #2
    prova questo codice così com'è
    codice:
    <%@ Language=VBScript %>
    <%
    partecipanti=1
    maxArticoli=10
    %>
    <HTML>
    <HEAD>
    <script language="vbscript">
    function Calcola(C1,C2,T)
    	T.value=FormatNumber(Replace(C1.value,".",",")*C2.value,2)
    	TOTALE()
    end function
    
    function TOTALE()
    	TOTALE=0
    	for i=1 to <%=maxArticoli%>
    		TOTALE=TOTALE+eval("T" & i & ".value")
    	next
    	TT.value = TOTALE
    end function
    
    </script>
    </HEAD>
    <BODY>
    
    <table>
    <%for i=1 to maxArticoli%>
      <tr>
        <td width="60%" align="left" class="recordV">
    		<input type="text" name="Descrizione<%=i%>" id="Descrizione<%=i%>"  size="65" maxlength="60">
    	</td>
        <td width="22%" align="center" class="recordV">
    		€. <input type="text" name="ImpPerPersona<%=i%>" style="text-align: right" size="10" value="0,00" onchange="Calcola ImpPerPersona<%=i%>,N<%=i%>,T<%=i%>">
    	</td>
        <td width="8%" align="center" class="recordV">
    		<input type="text" name="N<%=i%>" size="2" value="<%=partecipanti%>" onchange="Calcola ImpPerPersona<%=i%>,N<%=i%>,T<%=i%>">
    	</td>
        <td width="10%" align="center" class="recordV"> 
    		<input type="text" name="T<%=i%>" size="5" value="0,00"></td>
        </td>
      </tr>
    <%next%>
    	<tr>
    	<td colspan="3" align="right">Totale</td>
    	<td align="center">
    		<input type="text" name="TT" size="5" value="0,00">
    	</td>
    	
    </table>
    
    </BODY>
    </HTML>

  3. #3
    Utente di HTML.it L'avatar di antosto
    Registrato dal
    Nov 2002
    Messaggi
    112
    PERFETTO
    ci sei riuscito!!!

    Ho soltanto un'ultima domanda:
    hai usato dei campi di input per i totali ma così, qualcuno più smaliziato, potrebbe modificare i totali senza controllo.

    Si può evitare questo?????????

  4. #4
    certo utilizzando ad esempio della label

    codice:
    <%@ Language=VBScript %>
    <%
    partecipanti=1
    maxArticoli=10
    %>
    <HTML>
    <HEAD>
    <script language="vbscript">
    function Calcola(C1,C2,T)
    	T.innerText =FormatNumber(Replace(C1.value,".",",")*C2.value,2)
    	TOTALE()
    end function
    
    function TOTALE()
    	TOTALE=0
    	for i=1 to <%=maxArticoli%>
    		TOTALE=TOTALE+eval("T" & i & ".innerText")
    	next
    	TT.innerText = TOTALE
    end function
    
    </script>
    </HEAD>
    <BODY>
    
    <table>
    <%for i=1 to maxArticoli%>
      <tr>
        <td width="60%" align="left" class="recordV">
    		<input type="text" name="Descrizione<%=i%>" id="Descrizione<%=i%>"  size="65" maxlength="60">
    	</td>
        <td width="22%" align="center" class="recordV">
    		€. <input type="text" name="ImpPerPersona<%=i%>" style="text-align: right" size="10" value="0,00" onchange="Calcola ImpPerPersona<%=i%>,N<%=i%>,T<%=i%>">
    	</td>
        <td width="8%" align="center" class="recordV">
    		<input type="text" name="N<%=i%>" size="2" value="<%=partecipanti%>" onchange="Calcola ImpPerPersona<%=i%>,N<%=i%>,T<%=i%>">
    	</td>
        <td width="10%" align="center" class="recordV"> 
    		<label id="T<%=i%>" >0,00</label>
        </td>
      </tr>
    <%next%>
    	<tr>
    	<td colspan="3" align="right">Totale</td>
    	<td align="center">
    		<label id="TT" >0,00</label>
    	</td>
    	
    </table>
    
    </BODY>
    </HTML>

  5. #5
    oppure mettendo l'attributo readonly nei campi dei totali


  6. #6
    Utente di HTML.it L'avatar di antosto
    Registrato dal
    Nov 2002
    Messaggi
    112
    OK OcchioCrepato

    ho inserito le label come mi hai consigliato

    grazie 1000

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.