Ciao.

Ho realizzato il seguente form di inserimento dati:

codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Help Desk Virtuale</title>
<link rel="stylesheet" href="stylesheet.css">

<script language="JavaScript" type="text/JavaScript">
<!--
  
function checkData(calllog)
{
  if (calllog.Nome.value.length <= 0)
    {
      alert("Nome non inserito.");
      calllog.Nome.focus();
 
      // Invio del FORM abortito
      return(false);
    }
    
      if (calllog.Cognome.value.length <= 0)
    {
      alert("Cognome non inserito.");
      calllog.Cognome.focus();
 
      // Invio del FORM abortito
      return(false);
    }
    
    
      var re = new RegExp("^[!#$&'*+/-9=?A-Z^-~-]+(\\.[!#$&'*+/-9=?A-Z^-~-]+)*@" +
                          "([!#$&'*+/-9=?A-Z^-~-]+\\.)+([a-zA-Z]+)$", "");
   
      if (!calllog.Email.value.match(re))
    {
      alert("Email non corretta.");
      calllog.Email.focus();
 
      // Invio del FORM abortito
      return(false);
    }
    
    
      if (calllog.Categoria.value.length <= 0)
    {
      alert("Categoria non selezionata.");
      calllog.Categoria.focus();
 
      // Invio del FORM abortito
      return(false);
    }

    
      // Abilita l'invio del FORM
  return(true);
}
 
//-->
</script>
</head>
 
<body>
 
        <form name="calllog" method="post" action="send.asp" onSubmit="return checkData(this)">
 

 
                <select name="Categoria" id="CLProblemaCat" class="formx">
                  <option>-- Selezionare la categoria del problema --</option>
                  <option value="Account">Account</option>
                  <option value="Email">Email</option>
                  <option value="Forum">Forum</option>
                  <option value="Guestbook">Guestbook</option>
                  <option value="Newsletter">Newsletter</option>
                  <option value="SPAM">SPAM</option>
                  <option value="Registrazione">Registrazione</option>
                  <option value="Website">Website</option>
                  <option value="Altra">Altra categoria</option>
                </select>
 
                <input name="Categoria2" type="text" id="CLProblemaAltro" size="31" maxlength="100" class="formx">
 
</form>
</body>
</html>
Come si può vedere il campo select "Categoria" è previsto nel form come campo obbligatorio, mentre il campo text "Categoria2" non è previsto come obbligatorio.

Vorrei però che:

1) in caso di selezione di una categoria diversa da "Altra categoria" dalla select "Categoria", il campo text "Categoria2" venisse disabilitato alla compilazione (con cambio di colore al grigio);

2) in caso di selezione, invece, della voce "Altra categoria" dalla select "Categoria", il campo text "Categoria2" diventasse obbligatorio alla compilazione;

Non so se sto chiedendo l'impossibile, ma spero che sia un'idea/condizione realizzabile.

Grazie.