Visualizzazione dei risultati da 1 a 6 su 6

Discussione: somma e javascript

  1. #1

    somma e javascript

    Salve a tutti
    Premeto che non so programmare in JS ma mi limitoa a scovare cio che mi serve e modificare.

    devo fare una somma del tipo.

    valore fisso + valore a scelta da un checkbox =somma

    vi allego il codice della mia pagina

    codice:
    <html>
    <head>
    <script type="text/javascript">
    function startCalc(){
    interval = setInterval("calc()",1);
    }
    function calc(){
    one = document.ricaricacard.saldoeuro.value;
    two = document.ricaricacard.ricarica.value; 
    document.ricaricacard.saldoeurototale.value = (one * 1) + (two * 1);
    }
    function stopCalc(){
    clearInterval(interval);
    }
    </script>
    </head>
    <body>
    
    <center>
    <h1><font color=FC5C05>Ricarica Card</font></h1>
    
    
    <table border=1 bordercolor=dedfe1><tr><td>
    <form name="ricaricacard" method="POST" action="index.php">
    <table>
    <tr>
    <tr>
    	<td>Saldo Euro</td><td>
    	<INPUT TYPE='textarea' NAME='saldoeuro' size=15 readonly="yes" value="120" onFocus="startCalc();" 
    onBlur="stopCalc();"></textarea>
    	</td></tr>
    </table>
    </td></tr>
    <tr><td>
    <table>
    <tr>
    <tr>
    	<td colspan=4><center>Ricariche</td></tr>
    	<tr><td></td>
    	<td>Importo</td>
    	<td>Credito</td>
    	<td>Punti</td>
    	</tr>
    	<tr><td><input type=radio name=ricarica value=60 onFocus="startCalc();" 
    onBlur="stopCalc();"></td>
    	<td><INPUT TYPE='textarea' NAME='importo' size=5 readonly="yes" value="50,00"></textarea></td>
    	<td><INPUT TYPE='textarea' NAME='credito' size=5 readonly="yes" value="60,00"></textarea></td>
    	<td><INPUT TYPE='textarea' NAME='punti' size=5 readonly="yes" value="5"></textarea></td>
    	</tr>
    	<tr><td><input type=radio name=ricarica value=130 onFocus="startCalc();" 
    onBlur="stopCalc();"></td>
    	<td><INPUT TYPE='textarea' NAME='importo' size=5 readonly="yes" value="100,00"></textarea></td>
    	<td><INPUT TYPE='textarea' NAME='credito' size=5 readonly="yes" value="130,00"></textarea></td>
    	<td><INPUT TYPE='textarea' NAME='punti' size=5 readonly="yes" value="10"></textarea></td>
    	</tr>
    	<tr><td><input type=radio name=ricarica value=200 onFocus="startCalc();" 
    onBlur="stopCalc();"></td>
    	<td><INPUT TYPE='textarea' NAME='importo' size=5 readonly="yes" value="150,00"></textarea></td>
    	<td><INPUT TYPE='textarea' NAME='credito' size=5 readonly="yes" value="200,00"></textarea></td>
    	<td><INPUT TYPE='textarea' NAME='punti' size=5 readonly="yes" value="15"></textarea></td>
    	</tr>
    </table>
    </td></tr>
    <tr><td>
    <table>
    <tr>
    	<td>Saldo Euro</td><td><INPUT TYPE='textarea' NAME='saldoeurototale' size=15 readonly="yes"></textarea></td></tr>
    	<tr>
    </table>
    </td></tr>
    <tr><td><center>
    <table>
    <tr>
    	<td align=center><input type=submit value="Esegui Ricarica"></td></tr>
    </table>
    </form>
    </td></tr></table>
    </body>
    </html>
    l'errore è di tipo NaN nella somma credo sia dovuto dall'onFocus nel capo saldopunti ch'è fisso e quindi non viene mai in focus e quindi per il js è sempre 0....

    almeno credo

    help me!
    ty

  2. #2
    mi sono espresso male o non avete una risposta?? plss help me!!

  3. #3
    scusate se uppo ma sono disperato

  4. #4
    allora per quanto riguarda one ho risolto mettendo direttamente il valore invece del one= document.ricaricacard.saldoeuro.value; così:
    one="120" <----il numero lo prendo dal db in php prima.

    mentre ora mi rseta il problema del secondo valore. come gli assegno un valore 60 o altro al click di input radio?????

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    codice:
    <html>
    <head>
    <script type="text/javascript">
    function ControllaForm(){
    var Radio = document.ricaricacard.elements['ricarica']
    for(var i=0;i<Radio.length; i++){
    if(!(Radio[i].checked)){
    alert("seleziona una ricarica");
    return false;
    }
    return true;
    }
    }
    function Somma(Imp){
    var ImportoIniziale = parseInt(document.ricaricacard.saldoeuro.value);
    var Totale = (parseInt(Imp) + ImportoIniziale)
    document.ricaricacard.saldoeurototale.value = Totale
    }
    
    </script>
    </head>
    <body>
    
    <center>
    <h1><font color=FC5C05>Ricarica Card</font></h1>
    
    
    <table border=1 bordercolor=dedfe1><tr><td>
    <form name="ricaricacard" method="POST" action="index.php" onsubmit="return ControllaForm()">
    <table>
    <tr>
    <tr>
    	<td>Saldo Euro</td><td>
    	<INPUT TYPE="text" NAME="saldoeuro" size="15" readonly="readonly" value="120">
    	</td></tr>
    </table>
    
    <tr><td>
    <table>
    <tr>
    <tr>
    	<td colspan=4><center>Ricariche</td></tr>
    	<tr><td></td>
    	<td>Importo</td>
    	<td>Credito</td>
    	<td>Punti</td>
    	</tr>
    	<tr><td><input type=radio name="ricarica" value="60" onclick="Somma(60)"></td>
    	<td><INPUT NAME="importo" type="text" value="50,00" size="5"></textarea></td>
    	<td><INPUT TYPE="text" NAME="credito" size="5" readonly="readonly" value="60,00"></td>
    	<td><INPUT TYPE='text' NAME='punti' size="5" readonly="readonly" value="5"></td>
    	</tr>
    	<tr><td><input type=radio name="ricarica" value="130" onclick="Somma(130)"></td>
    	<td><INPUT TYPE="text" NAME="importo" size="5" readonly="readonly" value="100.00"></td>
    	<td><INPUT TYPE="text" NAME="credito" size="5" readonly="readonly" value="130.00"></td>
    	<td><INPUT TYPE="textarea" NAME='punti' size="5" readonly="readonly" value="10"></td>
    	</tr>
    	<tr><td><input type=radio name="ricarica" value="200" onclick="Somma(200)"></td>
    	<td><INPUT TYPE="text" NAME="importo" size="5" readonly="readonly" value="150.00"></td>
    	<td><INPUT TYPE="text" NAME="credito" size="5" readonly="readonly" value="200.00"></td>
    	<td><INPUT TYPE="text" NAME="punti" size="5" readonly="readonly" value="15"></textarea></td>
    	</tr>
    </table>
    </td></tr>
    <tr><td>
    <table>
    <tr>
    	<td>Saldo Euro</td><td><INPUT TYPE="text" NAME="saldoeurototale" size="15" readonly="readonly"></td></tr>
    	<tr>
    </table>
    </td></tr>
    <tr><td><center>
    <table>
    <tr>
    	<td align="center"><input type="submit" value="Esegui Ricarica"></td></tr>
    </table>
    </form>
    </td></tr></table>
    </body>
    </html>
    Cosi funziona prima l'ho dovuto sistemare tutto compi imput etc... i tag vanno settati correttamente (es: < input type="text" value="1" size="5">) vanno usate le virgole ["] non gli apici ['] penso che il form sia generato dinamicamente lato server (altrimenti non mi spiego l'oscenità) se cosi fosse prima di aggiungere lo script sistemalo altrimenti c'è rischio che non funzioni.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Originariamente inviato da cavicchiandrea
    i tag vanno settati correttamente (es: < input type="text" value="1" size="5">) vanno usate le virgole ["] non gli apici ['] penso che il form sia generato dinamicamente lato server (altrimenti non mi spiego l'oscenità) se cosi fosse prima di aggiungere lo script sistemalo altrimenti c'è rischio che non funzioni.
    andrea, secondo il W3 che usi ' o " non cambia niente, almeno questo fino a qualche anno fa ... più che altro in xhtml devi scrivere <input ... /> chiudendo correttamente il campo, mentre qui si sta in quirks, e senza usare HTML poichè i nomi dei tag non sono sempre uppercase ... insomma concordo che c'è confusione in questo layout, ma non è per gli apici che si creano problemi
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

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.