Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    Accedere al valore di un campo text

    Ciao a tutti.

    Devo realizzare un semplice calcolo: una moltiplicazione prezzo * quantità. Questa operazione deve avvenire in tre campi di testo di un form.
    Per fare questo ho realizzato la seguente funzione CalcolaTotale().
    codice:
    function CalcolaTotale() {
         var quantita = document.form.quantita.value;
    	 var prezzo = document.form.prezzo.value;
         var tot = prezzo * quantita;
    	 document.form.totale.value = tot;
      		}
    Fin qui tutto ok tramite onKeyUp='CalcolaTotale()' riesco ad aggiornare il campo totale.

    Adesso vorrei realizzare una funzione aggiungi_elemento() con append. Vorrei replicare i campi n volte in base alle intenzioni dell'utente.
    Ho inserito var num = num +1 e poi ho modificato la funzione CalcolaTotale() nel seguente modo ma non so se è giusto
    codice:
    function CalcolaTotale() {
         var quantita = document.form.quantita+num.value;
    	 var prezzo = document.form.prezzo+num.value;
         var tot = prezzo * quantita;
    	 document.form.totale.value = tot;
      		}
    Come si fa ad aggiungere num a quantita? quantita1, prezzo1, totale1, quantita2, prezzo2 ecc...

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,052
    var quantita = document.form.elemets['quantita'+num].value;


    P.S. cambia il nome da form a f1/modulo/etc... perché con alcuni browser potrebbe dare problemi il name form
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Grazie per l'aiuto. Non riesco a farla funzionare

    Questo è il pezzo di JS. Potresti vedere se ci sono errori?
    codice:
    <script type="text/javascript">
    	 var num = 1;
    	 function CalcolaTotale() {
         var quantita = document.f1.elements['quantita'+num].value;
    	 var prezzo = document.f1.elements['prezzo'+num].value;
         var tot = prezzo * quantita;
    	 document.f1.elements['totale'+num].value = tot;
      	 }
    	  function AggiornaNumero () {
    	  document.f1.numeros.value = num;
    	 }	
    	  function aggiungi_elemento () {
    	  $("table").append("<tr><td>"+num+"</td><td><input type='text' class='input_preventivo_piccolo' name='quantita"+num+"' value='' onKeyUp='CalcolaTotale()' /></td><td><input type='text' class='input_preventivo_grande' name='descrizione"+num+"' value='' /></td><td><input type='text' class='input_preventivo_piccolo' name='dimensioni"+num+"' value='' /></td><td><input type='text' class='input_preventivo_piccolo' name='prezzo"+num+"' value='' onKeyUp='CalcolaTotale()' /></td><td><input type='text' class='input_preventivo_piccolo' name='totale"+num+"' value=''  /></td><td><select name='stato"+num+"'><option value='1'>Approvato</option><option value='0'>Non approvato</option></select></td></tr>");    
    	  AggiornaNumero ();
    	 }		
    </script>
    Il link che al momento aggiunge la riga con i comandi di input ma non funzionano i calcoli.
    Aggiungi riga

    Grazie

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,052
    Questo dovrebbe fare quello che vuoi http://webandylab.altervista.org/row.php
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Grazie mille...
    Funziona tutto alla grande!
    Adesso sto provando a sommare i totali in un unico campo.
    Se ho bisogno ti faccio uno squillo.

    Grazie ancora.

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 © 2020 vBulletin Solutions, Inc. All rights reserved.