Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870

    Operazione automatica in form dati

    Ciao, ho un form con i campi A,B e C.

    Il campo C non è altro che il rapporto tra il valore che si inserisce nel campo A ed il valore che si inserisce nel campo B.

    Come faccio in asp a far calcolare automaticamente questo rapporto senza intervenire manualmente sul campo C del form?

    Grazie

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non lo fai con asp ma con js (se vuoi che appaia direttamente nel campo).

    Roby

  3. #3
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Grazie, mi sposti sul forum scripting o puoi suggerirmi qualcosa qui?

  4. #4
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    ci riprovo:

    ho un form con i campi A, B, C, rappAB, rappAC e rappBC.

    I campi rappAB, rappAC e rappBC non sono altro che il rapporto tra i valori che si inseriscono nei campi A, B e C.

    Come faccio in js a far calcolare automaticamente questi rapporti ed a fare visualizzare il risultato senza intervenire manualmente sui campi rappXX del form?

    Grazie

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    I campi rappXX dovrebbero essere readonly:
    <input type="text" name="rappAB" value="" readonly="true">

    Poi il rapporto lo fai con uno script semplicissimo:
    codice:
    function calc_rapp(ff) {
      var aa = ff.A.value;
      var bb = ff.B.value;
      var cc = ff.C.value;
    
      ff.rappAB.value = aa/bb;
      ff.rappAC.value = aa/cc;
      ff.rappBC.value = bb/cc;
    }
    Lo script puoi chiamarlo con l'evento che preferisci; io ti propongo un bottone apposito:
    <input type="button" onclick="calc_rapp(this.form);">
    (da mettere nello stesso form).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  6. #6
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Grazie, ma ho già un pulsante di invio al dbase... con il tuo suggerimento inserendo i valori in A-B-C nei campi rappXX visualizzerò in automatico il rapporto????

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non conosco il contesto, quindi non posso esprimermi.
    Comunque per la prima prova, metti il bottone (altrimenti e` come non fare nulla); poi dovresti capire con quale evento vanno riempiti i campi rappXX.
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  8. #8
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Ci riprovo, forse non mi spiego bene...

    non devo creare un nuovo form, ho già un form costruito e funzionante nel quale al momento i rapporti AB,BC e CA vengono inseriti manualmente; l'idea era quella di far compilare automaticamente ed in tempo reale questi rapporti tramite js una volta inseriti i valori nei campi A, B e C.

    Ho provato il tuo script non dà errore ma i campi dei rapporti rimangono tristemente vuoti anche se i campi A, B e C contengono valori.

    Spero d'essermi spiegato.
    Ciao e ancora grazie.

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Mi pare di parlare al vento.

    Lo script come e` fatto parte alla pressione di un bottone. Se non metti quel bottone nel form non funziona.

    Si puo` far partire lo script anche con un evento diverso, ma occorre sapere quale evento, e non conoscendo il contesto (tipo di form, come viene compilato, da chi, ...) non posso azzardare ipotesi.

    Sarebbe brutto far partire lo script quando i campi non sono pieni: ti verrebbero errori (c'e` il rischio di una divisione per zero).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  10. #10
    Utente di HTML.it L'avatar di fraude
    Registrato dal
    Feb 2004
    Messaggi
    2,870
    Originariamente inviato da Mich_
    Mi pare di parlare al vento.
    No, non parli al vento... ho buttato giù qualcosa ma non riesco a farlo funzionare:
    codice:
    <script type="text/javascript" language="javascript">
    <!--
    function calcola_rapporti()
    {
    	// Recupero i valori dai campi A, B, C
    	var valoreA = parseFloat(document.rapporti.valoreA.value);
    	var valoreB = parseFloat(document.rapporti.valoreB.value);
    	var valoreC = parseFloat(document.rapporti.valoreC.value);
    
    	// Calcolo i vari rapporti
    	var rapportoAB = valoreA/valoreB;
    	var rapportoBC = valoreB/valoreC;
    	var rapportoAC = valoreA/valoreC;
    
    	// Scrivo i risultati se validi nei campi corrispondenti
    	if (isFinite(rapportoAB))
    	{
    	document.rapporti.rapportoAB.value=rapportoAB;
    	}
    	if (isFinite(rapportoBC))
    	{
    	document.rapporti.rapportoBC.value=rapportoBC;
    	}
    	if (isFinite(rapportoAC))
    	{
    	document.rapporti.rapportoAC.value=rapportoAB;
    	}
    }
    //-->
    </script>
    
    
    
    <input type="text" name="rapportoAB" onkeydown="calcola_rapporti()";> 
    <input type="text" name="rapportoBC" onkeydown="calcola_rapporti()";>
    <input type="text" name="rapportoCA" onkeydown="calcola_rapporti()";>
    ma restituisce:
    'document.rapporti.valoreA.value' è nullo o non è un oggetto

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.