Problema di attivazione/disattivazione radio button

  • Creatore Discussione Creatore Discussione mrzpro
  • Data di inizio Data di inizio

mrzpro

Nuovo Utente
8 Nov 2009
11
0
1
Buongiorno a tutti,
il mio problema è il seguente:
ho il seguente listato con tre checkbox che includono 3 radio button:

HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

 <head>
</head>
<body>

<form post="desideri" action="">
<input type="checkbox" name="idea" id="idea" onClick="mod1(elemento1);/> <label for="idea"><span class="titolo_form">Idea</span></label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type="radio" name="radio_a" value="uno" checked/> <label for="sing">1</label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="radio_a" value="due" /> <label for="appart">2</label>
</form>



<!-- ================================================================ -->
<input type="checkbox" name="scelta" id="scelta" /> <label for="scelta"><span class="titolo_form">Prima scelta</span></label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type="radio" name="arc" id="a" checked/> <label for="a">A</label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="arc" id="b" /> <label for="b">B</label> <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="arc" id="c" /> <label for="c">C</label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="arc" id="d" /> <label for="d">D</label>
<br />


<input type="checkbox" name="scelta2" id="scelta2" /> <label for="scelta2"><span class="titolo_form">Scelta Due</span></label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;

<input type="radio" name="det" id="a1" checked/> <label for="a1">A1</label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="det" id="b1" /> <label for="b1">B1</label> <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="det" id="c1" /> <label for="c1">C1</label><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="radio" name="det" id="d1" /> <label for="d1">D1</label>

 </body>
 </html>

Chiaramente così com' è è tutto attivo e selezionabile.
Il mio problema è quello di rendere selezionabili i Radio button solo se è stata selezionata la check box relativa....
Vi ringrazio per l' aiuto
mrzpro
 
Ultima modifica di un moderatore:
scusa alessandro1997, come hai letto sono "nuovo" puoi, per favore, spiegarmi?
grazie
mrzpro:crying:
 
Ciao,potresti provare cosi
HTML:
<script type="text/javascript">
    function mostra(valore,elemento) {
        if(valore)
            document.getElementById(elemento).style.display = "inline";
        else
            document.getElementById(elemento).style.display = "none";
    }
</script>
<style type="text/css">
    #elemento1 {
        display: none;
    }
</style>
<form action="">
    <input type="checkbox" name="idea" id="idea" onchange="mostra(this.checked,'elemento1')"/> 
    <label for="idea"><span class="titolo_form">Idea</span></label><br />
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
    <div id="elemento1">
        <input type="radio" name="radio_a" value="uno" checked="checked"/> 
        <label>1</label><br />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        <input type="radio" name="radio_a" value="due" /> 
        <label>2</label>
    </div>
</form>
ho testato solo su firefox ed è la prima cosa che mi è venuta in mente
mentre per la formattazione del codice consigliata da Alessandro devi racchiuderlo trai tag presenti sulla barra di formattazione come da immagine

tag.png
 
Grazie criric, proverò immediatamente e ti farò sapere se OK....
Per quanto riguarda i tag, non vorrei insistere ma, sono presenti esattamente nell' ordine <html><head></head><body></body><html> e a parte te non
ho ricevuto chiarimenti quindi se è come dici tu.... i tag ci sono.

grazie di nuovo
mrzpro:hammer:
 
HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
<script>
function ciao(name){
    if(name==="idea"){
        if(document.getElementById("1").disabled===true){
            document.getElementById("1").disabled=false;
            document.getElementById("2").disabled=false;
        }
        else{
            document.getElementByName("1").disabled=true;
            document.getElementById("2").disabled=true;
        }
    }else if(name==="scelta"){
        // (dis)abilita a,b,c,d
    }else if(name==="scelta2"){
        // (dis)abilita a1,b1,c1,d1
        if(document.getElementById("a1").disabled===true){
            document.getElementById("a1").disabled=false;
            document.getElementById("b1").disabled=false;
            document.getElementById("c1").disabled=false;
            document.getElementById("d1").disabled=false;
        }else{
            document.getElementById("a1").disabled=true;
            document.getElementById("b1").disabled=true;
            document.getElementById("c1").disabled=true;
            document.getElementById("d1").disabled=true;
        }
    }
}
</script>
</head>
<body>

<form post="desideri" action="">
<input type="checkbox" name="idea" id="idea" onClick="ciao('idea');" /> <label for="idea"><span class="titolo_form">Idea</span></label><br />
 
<input type="radio" name="radio_a" value="uno" id="1" disabled/> <label for="sing">1</label><br />
<input type="radio" name="radio_a" value="due" id="2" disabled/> <label for="appart">2</label><br />

 
<!-- ================================================================ -->
<input type="checkbox" name="scelta" id="scelta" onClick="ciao('scelta');"/> <label for="scelta"><span class="titolo_form">Prima scelta</span></label><br />

<input type="radio" name="arc" id="a" disabled/> <label for="a">A</label><br />
<input type="radio" name="arc" id="b" disabled/> <label for="b">B</label> <br />
<input type="radio" name="arc" id="c" disabled/> <label for="c">C</label><br />
<input type="radio" name="arc" id="d" disabled/> <label for="d">D</label>
<br />
 
 
<input type="checkbox" name="scelta2" id="scelta2" onClick="ciao('scelta2');"/> <label for="scelta2"><span class="titolo_form">Scelta Due</span></label><br />
 
<input type="radio" name="det" id="a1" disabled/> <label for="a1">A1</label><br />
<input type="radio" name="det" id="b1" disabled/> <label for="b1">B1</label> <br />
<input type="radio" name="det" id="c1" disabled/> <label for="c1">C1</label><br />
<input type="radio" name="det" id="d1" disabled/> <label for="d1">D1</label>
 </form>
 
 </body>
 </html>
Io avevo pensato a qualcosa del genere: è molto più lungo come vedi (credo si possa "semplificare" qualcosa) ma disabilita solo i radio-button e, pur facendoli vedere, li rende "non cliccabili". Ovviamente poi ti serve sempre un controllo lato server.
Per SCELTA dovresti fare la stessa cosa di SCELTA2. L'ho provata solo per una tanto basta sostituire a1,b1... con a,b..

Per quanto riguarda i tag criric e ale non si riferiscono ai tag nel codice ma a quelli per formattarlo (detta in parole povere per farlo uscire nel quadrato che vedi sopra dove ti ho postato il codice fatto da me..se non formatti si vede tutto come il testo che stai leggendo ora e non sarebbe molto chiaro se confondiamo codice e testo).
 
Un grazie a tutti per l' aiuto!!!
Longo8 mi sembra (?) di capire allora che si parla di indentazione più che di Tag o sbaglio?
:hammer:
 
Non so più come spiegarlo senza ripetere ciò che è stato già detto.
Guarda l'immagine di criric e le varie spiegazioni che ti abbiamo dato.
Per quanto riguarda il problema: é stato risolto?
 
Si i listati funzionano devo solo "accomodarli" per quello che voglio esattamente fare.
Un grazie a tutti per l' aiuto!!!
e a Longo8 anche per la pazienza!!!
grazie
mrzpro
 

Discussioni simili