Condividi:        

[javascript] Abilitare una select in base a un chceckbox

Problemi di HTML? Di PHP, ASP, .NET, JSP, Perl, SQL, JavaScript, Visual Basic..?
Vuoi realizzare programmi in C, C++, Java, Ruby o Smalltalk, e non sai da che parte cominciare?
Entra qui e troverai le risposte!

Moderatori: Anthony47, Triumph Of Steel, archimede

[javascript] Abilitare una select in base a un chceckbox

Postdi Dylan666 » 21/05/07 10:28

Ho bisogno di abilitare una select solo nel caso che un checkbox sia flaggato. In caso contrario la select resta inutilizzabile.

In tutti gli esempi che ho trovato il javascrip aggiunge la parola "disabled" al tag della select, ma questo a quanto pare non è compatibile con lo standard XHTML che esige questa sintassi:

Codice: Seleziona tutto
<option value="spider" disabled="disabled">Spider</option>


Mi servirebbe uno script il quanto più semplice e lineare possibile, grazie
Avatar utente
Dylan666
Moderatore
 
Post: 39994
Iscritto il: 18/11/03 16:46

Sponsor
 

Postdi Dylan666 » 21/05/07 10:36

Ps: ho provato una cosa così ma non va

Codice: Seleziona tutto
<html>
<body>
<script language="JavaScript">
<!--
function disable(disableIt)
{
if (this.checked==true) {document.nomecampo1.disabled=false; } else { document.nomecampo1.disabled=true; }

}
//-->
</script>

<form name="form1">
<select name="nomecampo1" disabled="false" disabled id="select">
<option value="1">one</option>
<option value="2">two</option>
</select>
<br />
<input type="checkbox" onclick="disable(this.checked)" /> Disable
</form>

</body>
</html>
Avatar utente
Dylan666
Moderatore
 
Post: 39994
Iscritto il: 18/11/03 16:46

Postdi pjfry » 21/05/07 11:04

prova così, su FF funziona :)
Codice: Seleziona tutto
<html>
<body>
<script language="JavaScript">
<!--
function disable(disableIt)
{
if (disableIt) {
   document.form1.nomecampo1.disabled=false; }
 else
    { document.form1.nomecampo1.disabled=true; }
}
//-->
</script>

<form name="form1">
<select name="nomecampo1" disabled="false" disabled id="select">
<option value="1">one</option>
<option value="2">two</option>
</select>
<br />
<input type="checkbox" onclick="disable(this.checked)" /> Disable
</form>

</body>
</html>
Avatar utente
pjfry
Moderatore
 
Post: 8240
Iscritto il: 19/11/02 17:52
Località: terni

Postdi Dylan666 » 21/05/07 11:04

Piccolo progresso: così funziona:

Codice: Seleziona tutto
<html>
<body>
<script language="javascript">

function enableField()
{
document.form1.sel.disabled=false;
}
 
</script>

<form name="form1" >
<select name="sel" disabled=true>
<option value="1">one</option>
<option value="2">two</option>
</select>
<br />
<input type="checkbox" onclick="enableField()" /> Abilita
</form>

</body>
</html>


Ma se rilavo il check il campo non ritorna grigio.

Ho provato a fare questo miscuglio tra il primo e il secondo script per valutare lo stato del checkbox ma non va:

Codice: Seleziona tutto
<html>
<body>
<script language="javascript">

function enableField()
{
if (this.checked==true) {document.form1.sel.disabled=false; } else { document.form1.sel.disabled=true; }

}
 
</script>

<form name="form1" >
<select name="sel" disabled=true>
<option value="1">one</option>
<option value="2">two</option>
</select>
<br />
<input type="checkbox" onclick="enableField(this.checked)" /> Abilita
</form>

</body>
</html>
Avatar utente
Dylan666
Moderatore
 
Post: 39994
Iscritto il: 18/11/03 16:46

Postdi Dylan666 » 21/05/07 11:05

pjfry ha scritto:prova così, su FF funziona :)


Abbiamo postato insieme non avevo letto: è perfetto ;)
Avatar utente
Dylan666
Moderatore
 
Post: 39994
Iscritto il: 18/11/03 16:46


Torna a Programmazione


Topic correlati a "[javascript] Abilitare una select in base a un chceckbox":


Chi c’è in linea

Visitano il forum: Nessuno e 9 ospiti