Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    Problema script per somma algebrica

    Buon giorno, attraverso lo script che posterò di seguito, eseguo la somma dei valori di 4 checkbox.Nelle stesse ho come valore 1, sommandole avrei come risultato 4.

    Nel mio caso, invece di 4, dovrebbe tornare 1,3.
    Mi spiego.
    Se scelgo una checkbox avrei come risultato 1, ma se ne scelgo due o più, devo aggiungere 0,10 per ogni checkbox successiva e non 1.
    codice:
    <script>
    // automatically update the "#totalSum" field every time
    // the values are changes via the click event
    
    $("input[name^=sum]").sum("click", "#totalSum");//click per checkbox,radio etc etc
    
    </script>
    
    
    
    Numbers1:
    	<input type="checkbox" name="sum" value="1" size="2" />
    	<input type="checkbox" name="sum" value="1" size="2" />
    	<input type="checkbox" name="sum" value="1" size="2" />
    	<input type="checkbox" name="sum_alt" value="1" size="2" />
    	
    	Sum:
    	<input type="text" name="totalSum" id="totalSum" value="" size="2" readonly="readonly" />
    	(Change the values for dynamic calculations.)
    </p>
    Come faccio a fargli aggiungere 0,10 invece che 1?
    Grazie mille...

  2. #2
    sono arrivato a questo punto, non sapendo realmente se è fatto bene oppure no.
    Ma..vorrei sapere come faccio a trascrivere il risultato nella input text totalSum.
    codice:
    <script>
    if(document.getElementById("totalSum").value >= 2){
    		var totParziale= ((((document.getElementById("totalSum").value)/10)+1-0.1).toFixed(2));	
    		//$("input[name^=sum]").sum("click", "#totalSum");
    		//$("input[name^=sum]").sum("click", totParziale);
    
    				//$("input[name^=sum]").sum("click", "#totalSum"){
    					/*function (){
    						// get the sum of the elements
    						//var sum = (($(".textSum").sum())*25).toFixed(2);
    						var totFloat = ((((document.getElementById("totalSum").value)/10)+1-0.1).toFixed(2));	
    						// update the total
    						$("#totalSum").text("$" + totFloat.toString());
    					}
    				}*/
    			}
    			else{
    				alert("else");
    				$("input[name^=sum]").sum("click", "#totalSum");
    			}
    </script>
    
    
    
    
    
    				Numbers1:
    				<input type="checkbox" id="sum" name="sum" value="1" size="2" />
    				<input type="checkbox" id="sum" name="sum" value="1" size="2" />
    				<input type="checkbox" id="sum" name="sum" value="1" size="2" />
    				<input type="checkbox" id="sum" name="sum_alt" value="1" size="2" />
    				
    				Sum:
    				<input type="text" name="totalSum" id="totalSum" value="" size="2" readonly="readonly" />
    				(Change the values for dynamic calculations.)
    			</p>
    come faccio?
    grazie mille...

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    43
    prova con :

    $('#id_che_vuoi').attr('value',testo che vuoi);

  4. #4
    si...grazie
    però diciamo, che ci siamo quasi...
    vorrei che come in questo caso:
    codice:
    $("input[name^=sum]").sum("click", "#totalSum");
    al click visualizzo in tempo reale..
    cosi vorrei anche per la tua soluzione, ma come?
    ti ringrazio molto gentile

  5. #5
    sono arrivato a quest'altra soluzione...
    ma non capisco come mai, non visualizzo il risultato dentro totalSum
    codice:
    var totFloat = (((((document.getElementById("totalSum").value)/10)-0.1)+1).toFixed(2));
    				alert(totFloat);
    				$("input[name^=sum]").sum({
    					
    					bind		:	"click",
    				 	selector	: $('#totalSum').text(totFloat)
    
    			});
    puoi aiutarmi?

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    43
    Forse così :

    Modifica l'html per inserire il campo text :

    Codice PHP:
    <input type="text" name="totalSum" id="totalSum" value="" size="2" readonly="readonly" onclick="calcola()"/> 

    E aggiugi questo script :

    codice:
    function calcola(){ var totFloat = (((((document.getElementById("totalSum").value)/10)-0.1)+1).toFixed(2)); $("input[name^=sum]").attr('value',totFloat); }

  7. #7
    buon giorno.
    mi dice che calcola is not defined...
    grazie ancora

  8. #8
    altro giro altra corsa:
    codice:
    $("#idTotal").click(
    				function (){
    					// get the sum of the elements
    					var sum = $(".textSumm").sum();
    					if (sum>=2){
    						var sum2 = (((($(".textSumm").sum())/10)-0.1)+1).toFixed(2);
    						alert(sum2);	
    						$("#totalSum").text("$" + sum2.toString());
    					}
                                            else{
    					// update the total
    					//$("#totalSum").text("$" + sum2);
    					}
    				}
    			);
    Solo non capisco come mai, l'alert(sum2); mi restituisce il conteggio esatto, ma non lo riesco a scrivere dentro l'input #totalSum.Dove sbaglio?
    Grazie mille...

  9. #9
    ennesimo giro
    praticamente funziona...incredibile.
    codice:
    $("#idTotal").click(
    				function (){
    					// get the sum of the elements
    					var sum1 = $(".textSumm").sum();
    					if (sum1>=2){
    						var sum2 = (((($(".textSumm").sum())/10)-0.1)+1).toFixed(2);
    						$("#totalSum").text("$" + sum2.toString());
    						//alert(sum2);
    					}
    					else{
    						$("#totalSum").text("$" + sum1.toString());
    						//alert(sum1);
    					}					
    				}
    			);
    Però vorrei che al click sulla checkbox mi restituisse il risultato e non al click del button idTotal...

    ho provato a fare cosi:
    codice:
    $("#sum").click(
    	function (){
    etc etc...
    solo che funziona solo per una checkbox..
    Come posso fare?Grazie mille....

  10. #10
    non me funziona, manco più per una sola di checkbox...
    ragazzi sapete come risolvere, continuo a provare

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.