ho questa funzione:

Codice PHP:
      <script language="javascript1.2" type="text/javascript">
      <!--
      function 
categ_sel() {
          
document.form1.do_categoria.value=document.form1.categoria.options[document.form1.categoria.selectedIndex].value;
        if (
document.form1.categoria.options[document.form1.categoria.selectedIndex].text == 'No') {
            
document.form1.do_categoria.readOnly 'false';
        } else {
            
document.form1.do_categoria.readOnly 'true';
        }
      }
      -->
      
</script> 
questa è la casella di testo, dove invece viene riportato il valore selezionato dal SELECT più in basso:

<input name="do_categoria" type="text" id="do_categoria" value="" size="18" maxlength="100">


<select name="categoria" id="categoria" onchange="categ_sel();">
<option value="">No</option>
....
</select>


il problema è che inizialmente, appena viene caricata la pagina per la prima volta, la casella di testo è abilitata, quindi è possibile specificare un nuovo valore digitabile, poi se dal SELECT si sceglie una voce esistente la funzione controlla il valore, lo incolla nella casella di testo e poi abilita il READONLY della casella di testo per non permettere all'utente di modificare il dato scelto dal menù SELECT, fino a questo punto ci siamo!

il problema è che se l'utente dal menù SELECT la voce "No" io voglio che la casella di testo venga svuotata e che il readonly venga disattivato per ripristinare la possibilità di scrivere liberamente.

La casella di testo viene pulita.. ma il readonly persiste all'infinito!