Originariamente inviato da TrueLies
codice:
<form> prova:
<select name="foo" onchange="validami(this, 1)">
<option value="ok">ok</option>
<option value="no">no</option>
</select>
<input type="text" name="foo2" value="" />
<input type="button" name="foo3" value="clicca" />
</form>
<script>
function validami(sel, index){
if(sel.selectedIndex==index){
sel.form.foo2.disabled=true; sel.form.foo2.value='';
sel.form.foo3.disabled=true;
}
else{
sel.form.foo2.disabled=false;
sel.form.foo3.disabled=false;
};
}
</script>
presume i nomi del campo di testo siano foo2, del pulsante foo3, e che conosci l'index della option che deve innescare il comportamento (in questo caso la numero 1, tenendo presente che il conteggio degli elementi in javascript non parte da 1 ma da 0)
Ciao
C'è qualcosa che non va.
Questo il mio javascript:
codice:
<script type="text/javascript">
function validami(sel, index){
if(sel.selectedIndex==index){
sel.myform.datafinale.disabled=true; sel.myform.datafinale.value='';
sel.myform.calcola.disabled=true;
}
else{
sel.myform.datafinale.disabled=false;
sel.myform.calcola.disabled=false;
};
}
</script>
questa la pagina (html-php)dove è inserito il form con la select:
Codice PHP:
.............
<form name="myform" action="scadenze.php" method="post">
........................
<td height="30" width="267" colspan="2">
<?
$option = '';
while($rowgg = mysql_fetch_array($risultatogg))
{
$option .= '<option value="'.$rowgg['valore'].'">' . $rowgg['scritta'] . '</option>';
}
echo '<select name="incremento" onchange="validami(this, 7)"></option>' . $option . '</select>';
?>
<input type="button" value="calcola" name="calcola" onclick="dateAdd()">
<input type="text" value="" name="datafinale" size="10">
</td>
I valori del campo select vengono richiamati da una tabella del db.
Il valore che mi interessa è l'ultimo (l'ottavo) che ha come value 0 quindi ho inserito
onchange="validami(this, 7)
Ma non avviene niente.
Cosa sbaglio?
Grazie