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

    Utilizzo dati form html su javascript....

    Sto iniziando proprio adesso ad utilizzare Javascript, dopo aver imparato ad usare php e mysql, ho proprio bisogno di un linguaggio client-side. Devo fare una domanda che a voi sembrerà stupida, ma x me purtroppo è fondamentale: poniate che io abbia ad esempio un form con due input text di tipo numerico, chiamiamoli "a" e "b", ed inoltre una casella "c" che servirà a contenere la somma dei valori "a" e "b"; tramite l'evento onChange vorrei che ogni qualvolta scrivo un valore in una delle due input type, automaticamente venga effettuata la somma dei valori esistenti in "a" e "b" e trascritta subito in "c". Come faccio, nella funzione javascript da richiamare nell'evento onChange, a far "capire" a javascript che le variabili che deve sommare sono i due input text nel form html? Detto in poche parole, come posso legare i valori di html a javascript? Spero di essermi spiegato, grazie in anticipo.

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Benvenuto nel forum

    codice:
    <script>
    function somma() {
      f = document.NomeDelTuoForm;
      aa = f.a.value;
      bb = f.b.value;
      if (isNaN(aa)) { aa=0 } else { aa=parseFloat(aa) } ;
      bb = (isNaN(bb)) ? 0 : parseFloat(bb);
      f.c.value=(aa+bb);
    }
    </script>
    ...
    <input ... name="a" onchange="somma()">
    <input ... name="b" onchange="somma()">
    <input ... name="c" readonly>
    Prendilo come esempio... ma ti consiglio di cominciare con la lettura di una buona guida, rischi di non capire a fondo i suggerimenti che ricevi

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  3. #3
    Innanzitutto grazie mille. Credo di aver capito cosa hai fatto. Sfruttando la programmazione per oggetti hai richiamato in modo costante la parte relativa al form con la variabile "f"; dopodichè, unisci a questa la parte degli input text con .a.value. Ho solo due dubbi:
    1)Perchè dai alle variabili nomi con doppie lettere, cioè invece di a usi aa e invece di b usi bb?
    2)Il value delle mie caselle è impostato di default a 0 per evitare casini col mysql. Può essere un problema?

  4. #4
    Lo sto provando e non fa la somma....se scrivo 3 su a, sulla casella c compare 3, e ci siamo; poi se scrivo 3 sulla casella b, invece di comparire 6 su c, compare 33; se scrivo 3 su d, invece che 9 su c appare 333; in pratica il più viene visto non come operatore somma ma come concatenatore. Perchè?

    Ok, tutto fatto....grazie mille!!!!!

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.