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

    Input text compilato in base a input radio

    Ciao

    ho un form con una serie di input radio affiancati da una serie di input text.

    Ad ogni input radio corrisponde un input text

    Dovrei fare in modo che selezionando un input radio il valore venga inserito nel rispettivo input text.

    ho provato in + modi ma nada

    anche così :
    <input type="radio" value="2" name="PH" OnClick="javascript:document.procedura.cp2.value=3 600;">
    <input type="text" size="6" name="cp2" value="--" readonly>

    ma nada

    thks
    [°_°] The Web Styler Project [°_°]
    :.:Classifica Spettacolare :.:
    :-:Partecipa :-: GUADAGNA SCRIVENDO ARTICOLI !! fino a 2,5 crediti per parola

  2. #2
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    non mi stancherò mai di ripeterlo... usate sempre codice crossbrowser:

    codice:
    <input type="radio" value="2" name="PH" OnClick="javascript:document.getElementById('cp2').value='3600';"> 
    <input type="text" size="6" id="cp2" name="cp2" value="--" readonly>
    e chiudo in bellezza il mio 400esimo post... ciauz

    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  3. #3
    <input type="radio" value="2" name="PH" onClick="javascript:document.getElementById('cp2') .value='3600';">
    <input type="text" size="6" id="cp2" name="cp2" value="--" readonly>

    così funziona perfettamente

    non avevo però calcolato che così com'è tutte le input text rimangono compilate una volta selezionate mentre io dovrei fare in modo che rimanga compilata solo quella relativa alla input radio selezionata..

    [°_°] The Web Styler Project [°_°]
    :.:Classifica Spettacolare :.:
    :-:Partecipa :-: GUADAGNA SCRIVENDO ARTICOLI !! fino a 2,5 crediti per parola

  4. #4
    mi spiego meglio con questo esempio :

    <input type="radio" value="1" name="PH" onFocus="javascript:document.getElementById('cp1') .value='18,00';"><input type="text" size="6" id="cp1" name="cp1" value="--" readonly>

    <input type="radio" value="2" name="PH" onFocus="javascript:document.getElementById('cp2') .value='36,00';"><input type="text" size="6" id="cp2" name="cp2" value="--" readonly>

    <input type="radio" value="3" name="PH" onFocus="javascript:document.getElementById('cp3') .value='48,00';"><input type="text" size="6" id="cp3" name="cp3" value="--" readonly>

    <input type="radio" value="4" name="PH" onFocus="javascript:document.getElementById('cp4') .value='72,00';"><input type="text" size="6" id="cp4" name="cp4" value="--" readonly>

    <input type="radio" value="5" name="PH" onFocus="javascript:document.getElementById('cp5') .value='45,60';"><input type="text" size="6" id="cp5" name="cp5" value="--" readonly>

    <hr />
    <input type="checkbox" value="1" name="SA" onClick="javascript:document.getElementById('servi zio1').value='1800';" > servizio 1 <input type="text" size="6" id="servizio1" name="servizio1" value="--" readonly>

    <input type="checkbox" value="2" name="SA" onClick="javascript:document.getElementById('servi zio2').value='3360';" > servizio 2 <input type="text" size="6" id="servizio2" name="servizio2" value="--" readonly>

    <input type="checkbox" value="3" name="SA" onClick="javascript:document.getElementById('servi zio3').value='6000';" > servizio 3 <input type="text" size="6" id="servizio3" name="servizio3" value="--" readonly>

    <input type="checkbox" value="4" name="SA" onClick="javascript:document.getElementById('servi zio4').value='7200';" > servizio 4 <input type="text" size="6" id="servizio4" name="servizio4" value="--" readonly>


    L'utente dovrà poter selezionare 1 radio e quanti checkbox vuole, però gli importi devo rispecchiare le scelte, quindi se cambio selezione un importo dovrà essere rimosso.

    thks
    [°_°] The Web Styler Project [°_°]
    :.:Classifica Spettacolare :.:
    :-:Partecipa :-: GUADAGNA SCRIVENDO ARTICOLI !! fino a 2,5 crediti per parola

  5. #5
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Forse cosi....

    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    var cpVal  = 0;
    var prevCp = '';
    function cambiaValore(anId,unValore) {
     if (prevCp != '') {
      document.getElementById(prevCp).value='--';
     } // if (prevCp != '') 
     prevCp = anId;
     document.getElementById(prevCp).value=unValore;
    } // function cambiaValore(anId,unValore)
    
    function servizio(statoCB,unServizio,unValore) {
     if (statoCB) {
      document.getElementById(unServizio).value=unValore;
     } else {
      document.getElementById(unServizio).value='--'; 
     } //  if (statoCB)
    } // function servizio(statoCB,unServizio,unValore)
    //-->
    </script>
    
    </head>
    <body>
    <input type="radio" value="1" name="PH" onFocus="cambiaValore('cp1','18,00');"><input type="text" size="6" id="cp1" name="cp1" value="--" readonly>
     
    <input type="radio" value="2" name="PH" onFocus="cambiaValore('cp2','36,00');"><input type="text" size="6" id="cp2" name="cp2" value="--" readonly>
     
    <input type="radio" value="3" name="PH" onFocus="cambiaValore('cp3','48,00');"><input type="text" size="6" id="cp3" name="cp3" value="--" readonly>
     
    <input type="radio" value="4" name="PH" onFocus="cambiaValore('cp4','72,00');"><input type="text" size="6" id="cp4" name="cp4" value="--" readonly>
     
    <input type="radio" value="5" name="PH" onFocus="cambiaValore('cp5','45,60');"><input type="text" size="6" id="cp5" name="cp5" value="--" readonly>
     
    <hr /> 
    <input type="checkbox" value="1" name="SA" onClick="servizio(this.checked,'servizio1','1800');" > servizio 1 <input type="text" size="6" id="servizio1" name="servizio1" value="--" readonly>
     
    <input type="checkbox" value="2" name="SA" onClick="servizio(this.checked,'servizio2','3360');" > servizio 2 <input type="text" size="6" id="servizio2" name="servizio2" value="--" readonly>
     
    <input type="checkbox" value="3" name="SA" onClick="servizio(this.checked,'servizio3','6000');" > servizio 3 <input type="text" size="6" id="servizio3" name="servizio3" value="--" readonly>
     
    <input type="checkbox" value="4" name="SA" onClick="servizio(this.checked,'servizio4','7200');" > servizio 4 <input type="text" size="6" id="servizio4" name="servizio4" value="--" readonly>
    
    </body>
    </html>

  6. #6
    Perfetto

    E' esattamente quello di cui avevo bisogno thks

    ancora due cose ..

    dovrei:
    - per alcune checkbox dare possibilità di definire il numero di servizi da acquistare
    - inserire un totalone finale

    grazie

    ciauz

    tipo questo

    codice:
    <html>
    <head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    var cpVal  = 0;
    var prevCp = '';
    function cambiaValore(anId,unValore) {
     if (prevCp != '') {
      document.getElementById(prevCp).value='--';
     } // if (prevCp != '') 
     prevCp = anId;
     document.getElementById(prevCp).value=unValore;
    } // function cambiaValore(anId,unValore)
    
    function servizio(statoCB,unServizio,unValore) {
     if (statoCB) {
      document.getElementById(unServizio).value=unValore;
     } else {
      document.getElementById(unServizio).value='--'; 
     } //  if (statoCB)
    } // function servizio(statoCB,unServizio,unValore)
    //-->
    </script>
    
    </head>
    <body>
    <input type="radio" value="1" name="PH" onFocus="cambiaValore('cp1','18,00');"><input type="text" size="6" id="cp1" name="cp1" value="--" readonly>
     
    <input type="radio" value="2" name="PH" onFocus="cambiaValore('cp2','36,00');"><input type="text" size="6" id="cp2" name="cp2" value="--" readonly>
     
    <input type="radio" value="3" name="PH" onFocus="cambiaValore('cp3','48,00');"><input type="text" size="6" id="cp3" name="cp3" value="--" readonly>
     
    <input type="radio" value="4" name="PH" onFocus="cambiaValore('cp4','72,00');"><input type="text" size="6" id="cp4" name="cp4" value="--" readonly>
     
    <input type="radio" value="5" name="PH" onFocus="cambiaValore('cp5','45,60');"><input type="text" size="6" id="cp5" name="cp5" value="--" readonly>
     
    <hr /> 
    <input type="checkbox" value="1" name="SA" onClick="servizio(this.checked,'servizio1','1800');"> servizio 1 <input type="text" size="6" id="servizio1" name="servizio1" value="--" readonly>
     
    <input type="checkbox" value="2" name="SA" onClick="servizio(this.checked,'servizio2','3360');"> servizio 2 <input type="text" size="6" id="servizio2" name="servizio2" value="--" readonly>
     
    <input type="checkbox" value="3" name="SA" onClick="servizio(this.checked,'servizio3','6000');"> servizio 3 <input type="text" size="6" id="servizio3" name="servizio3" value="--" readonly>
     
    <input type="checkbox" value="4" name="SA" onClick="servizio(this.checked,'servizio4','7200');"> servizio 4 <input type="text" size="6" id="quanti3" name="quanti3" value="1"> <input type="text" size="6" id="servizio4" name="servizio4" value="--" readonly>
    
    <hr /> 
    Totale : <input type="text" size="6" name="totale">
    
    </body>
    </html>
    [°_°] The Web Styler Project [°_°]
    :.:Classifica Spettacolare :.:
    :-:Partecipa :-: GUADAGNA SCRIVENDO ARTICOLI !! fino a 2,5 crediti per parola

  7. #7
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Non ho ben capito. Comunque....
    codice:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    <head>
    <title>Untitled</title>
    <script language="JavaScript" type="text/javascript">
    <!--
    var cpVal  = 0;
    var prevCp = '';
    function cambiaValore(anId,unValore) {
     if (prevCp != '') {
      document.getElementById(prevCp).value='--';
     } // if (prevCp != '') 
     prevCp = anId;
     document.getElementById(prevCp).value=unValore;
    } // function cambiaValore(anId,unValore)
    
    function servizio(statoCB,unServizio,unValore) {
     if (statoCB) {
      document.getElementById(unServizio).value=unValore;
     } else {
      document.getElementById(unServizio).value='--'; 
     } //  if (statoCB)
     calcolaTotale();
    } // function servizio(statoCB,unServizio,unValore)
    
    function calcolaTotale() {
     oColl  = document.getElementsByTagName('INPUT');
     tot    = 0;
     for (i=0;i<oColl.length;i++) {
      curInput = oColl.item(i);
    	if (curInput.type == 'checkbox' && curInput.name.substr(0,2) == 'SA') {
       serv  = 'servizio' + curInput.value;	
    	 if (curInput.checked && document.getElementById(serv).value != '--') {
     	  tot     += parseFloat(document.getElementById(serv).value);
       } // if (curInput.checked && document.getElementById(serv).value != '--')
     	} // if (curInput.type == 'checkbox' && curInput.name.substr(0,2) == 'SA')
     } // for (i=0;i<oColl.length;i++)
     document.getElementById('totale').value = tot;
    } // function calcolaTotale() 
    //-->
    </script>
    
    </head>
    <body>
    <input type="radio" value="1" name="PH" onFocus="cambiaValore('cp1','18,00');"><input type="text" size="6" id="cp1" name="cp1" value="--" readonly>
     
    <input type="radio" value="2" name="PH" onFocus="cambiaValore('cp2','36,00');"><input type="text" size="6" id="cp2" name="cp2" value="--" readonly>
     
    <input type="radio" value="3" name="PH" onFocus="cambiaValore('cp3','48,00');"><input type="text" size="6" id="cp3" name="cp3" value="--" readonly>
     
    <input type="radio" value="4" name="PH" onFocus="cambiaValore('cp4','72,00');"><input type="text" size="6" id="cp4" name="cp4" value="--" readonly>
     
    <input type="radio" value="5" name="PH" onFocus="cambiaValore('cp5','45,60');"><input type="text" size="6" id="cp5" name="cp5" value="--" readonly>
     
    <hr /> 
    <input type="checkbox" value="1" name="SA1" onClick="servizio(this.checked,'servizio1','1800');" > servizio 1 <input type="text" size="6" id="servizio1" name="servizio1" value="--" readonly>
     
    <input type="checkbox" value="2" name="SA2" onClick="servizio(this.checked,'servizio2','3360');" > servizio 2 <input type="text" size="6" id="servizio2" name="servizio2" value="--" readonly>
     
    <input type="checkbox" value="3" name="SA3" onClick="servizio(this.checked,'servizio3','6000');" > servizio 3 <input type="text" size="6" id="servizio3" name="servizio3" value="--" readonly>
     
    <input type="checkbox" value="4" name="SA4" onClick="servizio(this.checked,'servizio4','7200');" > servizio 4 <input type="text" size="6" id="servizio4" name="servizio4" value="--" readonly>
    
    Totale : <input type="text" size="6" name="totale" id="totale" readonly value="0">
    
    </body>
    </html>

  8. #8
    scusa, non mi sono spiegato bene

    il totale dovrebbe essere fatto anche sui radio, quindi su checkbox è radio..

    per quanto riguarda invece i checkbox dovrei fare in modo che l'utente possa decidere "quanti" 'servizi 1' acquistare e quindi il valore da inserire nella input sarà il costo x il numero scelto ..


    thks
    [°_°] The Web Styler Project [°_°]
    :.:Classifica Spettacolare :.:
    :-:Partecipa :-: GUADAGNA SCRIVENDO ARTICOLI !! fino a 2,5 crediti per parola

  9. #9
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Forse cosi (ma da migliorare)

    codice:
    <html>
    <head>
    <title>Untitled</title>
    <style type="text/css">
    <!--
    .readonly {background-color:yellow}
    -->
    </style>
    
    <script language="JavaScript" type="text/javascript">
    <!--
    var cpVal  = 0;
    var prevCp = '';
    var cpAmm  = 0;
    
    function cambiaValore(anId,unValore) {
     if (prevCp != '') {
      document.getElementById(prevCp).value='--';
     } // if (prevCp != '') 
     prevCp = anId;
     document.getElementById(prevCp).value=unValore;
     cpAmm  = unValore;
     calcolaTotale(); 
    } // function cambiaValore(anId,unValore)
    
    function servizio(aCB,unServizio,unValore) {
     statoCB = aCB.checked;
     serv    = 'servizio'+unServizio;
     qta     = 'quanti'+unServizio;
     errore  = false;
     if (isNaN(document.getElementById(qta).value)) {
      alert('Quantita del servizio '+unServizio+' non numercia');
    	errore = true;
     } else {
      if (document.getElementById(qta).value <= 0) {
       alert('Quantita del servizio '+unServizio+' uguale a 0 o minore di 0');
    	 errore = true;	
    	} // if (document.getElementById(qta).value <= 0)
     } // if (isNaN(document.getElementById(qta).value))
     
     if (errore) {
      aCB.checked = false;
    	document.getElementById(serv).value='--';
    	document.getElementById(qta).value=1;
    	return;
     } // if (errore)
     
     if (statoCB) {
      document.getElementById(serv).value=unValore;
     } else {
      document.getElementById(serv).value='--'; 
    	document.getElementById(qta).value=1;	
     } //  if (statoCB)
     calcolaTotale(); 
    } // function servizio(statoCB,unServizio,unValore)
    
    function calcolaTotale() {
     oColl  = document.getElementsByTagName('INPUT');
     tot    = 0;
     for (i=0;i<oColl.length;i++) {
      curInput = oColl.item(i);
    	if (curInput.type == 'checkbox' && curInput.name.substr(0,2) == 'SA') {
       serv  = 'servizio' + curInput.value;	
    	 qta   = 'quanti' + curInput.value;	
    	 if (curInput.checked && document.getElementById(serv).value != '--') {
     	  tot     += parseFloat(document.getElementById(serv).value) * parseFloat(document.getElementById(qta).value);
       } // if (curInput.checked && document.getElementById(serv).value != '--')
     	} // if (curInput.type == 'checkbox' && curInput.name.substr(0,2) == 'SA')
     } // for (i=0;i<oColl.length;i++)
     document.getElementById('totale').value = tot + parseFloat(cpAmm);
    } // function calcolaTotale() 
    
    
    function controllaQta(unServizio) {
     qta     = 'quanti'+unServizio;
     errore  = false;
     if (isNaN(document.getElementById(qta).value)) {
      alert('Quantita del servizio '+unServizio+' non numercia');
    	errore = true;
     } else {
      if (document.getElementById(qta).value <= 0) {
       alert('Quantita del servizio '+unServizio+' uguale a 0 o minore di 0');
    	 errore = true;	
    	} // if (document.getElementById(qta).value <= 0)
     } // if (isNaN(document.getElementById(qta).value))
     
     if (errore) {
    	document.getElementById(qta).value=1;
     } // if (errore)
     calcolaTotale(); 
    }
    //-->
    </script>
    
    </head>
    <body>
    <input type="radio" value="1" name="PH" onFocus="cambiaValore('cp1','18.00');"><input class="readonly" type="text" size="6" id="cp1" name="cp1" value="--" readonly>
     
    <input type="radio" value="2" name="PH" onFocus="cambiaValore('cp2','36.00');"><input class="readonly" type="text" size="6" id="cp2" name="cp2" value="--" readonly>
     
    <input type="radio" value="3" name="PH" onFocus="cambiaValore('cp3','48.00');"><input class="readonly" type="text" size="6" id="cp3" name="cp3" value="--" readonly>
     
    <input type="radio" value="4" name="PH" onFocus="cambiaValore('cp4','72.00');"><input class="readonly" type="text" size="6" id="cp4" name="cp4" value="--" readonly>
     
    <input type="radio" value="5" name="PH" onFocus="cambiaValore('cp5','45.60');"><input class="readonly" type="text" size="6" id="cp5" name="cp5" value="--" readonly>
     
    <hr /> 
    <input type="checkbox" value="1" name="SA" onClick="servizio(this,'1','1800');"> servizio 1 <input class="readonly" type="text" size="6" id="servizio1" name="servizio1" value="--" readonly>
    <input type="hidden" size="6" id="quanti1" name="quanti1" value="1">
     
    <input type="checkbox" value="2" name="SA" onClick="servizio(this,'2','3360');"> servizio 2 <input class="readonly" type="text" size="6" id="servizio2" name="servizio2" value="--" readonly>
    <input type="hidden" size="6" id="quanti2" name="quanti2" value="1">
     
    <input type="checkbox" value="3" name="SA" onClick="servizio(this,'3','6000');"> servizio 3 <input class="readonly" type="text" size="6" id="servizio3" name="servizio3" value="--" readonly>
    <input type="hidden" size="6" id="quanti3" name="quanti3" value="1">
     
    <input type="checkbox" value="4" name="SA" onClick="servizio(this,'4','7200');"> servizio 4 <input class="readonly" type="text" size="6" id="servizio4" name="servizio4" value="--" readonly>
    Quantità : <input type="text" size="6" onblur="controllaQta('4');" id="quanti4" name="quanti4" value="1"> 
    
    <hr /> 
    Totale : <input class="readonly" type="text" size="6" name="totale" id="totale" readonly value="0">
    
    </body>
    </html>

  10. #10
    eccolo.. mittico !

    solo due dettagli sul servizio 4, provo a sistemarmeli ..

    1. il totate del servizio 4 dovrebbe indicare il prezzo singolo x il numero .. quindi non 7200 ma 7200 x quantità
    2. il costo dovrebbe cambiare mentre digito il numero e non all'uscita quindi onblur.

    Grazie mille
    [°_°] The Web Styler Project [°_°]
    :.:Classifica Spettacolare :.:
    :-:Partecipa :-: GUADAGNA SCRIVENDO ARTICOLI !! fino a 2,5 crediti per parola

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.