Ciao,
lo so che tante volte avete già parlato di controllo di radio button, ma questa volta mi trovo in una situazione per la quale non trovo una soluzione..
ho questo codice per il controllo di un form (che in realtà non è realizzato mediante <FORM> dato che tanto lo utilizzo per raccogliere dati da trattare con js-ajax):
codice:
function formControl(){
if ( !document.getElementById("username").value.match(/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/) ){
alert("Devi specificare un indirizzo email valido come username.");
document.getElementById("username").focus();
return false;
}
if ( !dateControl(document.getElementById("data_scadenza").value) ){
alert("Devi inserire una data valida.");
document.getElementById("data_scadenza").focus();
return false;
}
var selezionato = false;
for(var i=0;i<document.getElementById("tipo").tipo.length;i++){
if(document.getElementById("tipo").tipo.checked){
selezionato = true;
}
}
if( !selezionato ){
alert("Devi selezionare il tipo di utente.");
document.getElementById("tipo").tipo.focus();
return false;
}
return true;
}
Questa invece è la tabella che contiene i campi:
codice:
<table>
<tr><td>Username: </td><td class="dx"><input type="text" name="username" id="username"> <span class="tip">(Deve essere un indirizzo mail valido)</td></tr>
<tr>
<td>Data scadenza abbonamento: </td>
<td class="dx"><input type="text" name="data_scadenza" id="data_scadenza"> <span class="tip">(Formato corretto: gg/mm/aaaa)</td>
</tr>
<tr>
<td valign="top">Tipo utente: </td>
<td class="dx" id="tipo">
<input type="radio" name="tipo" value="utente">utente semplice
<input type="radio" name="tipo" value="associazione">associazione
</td>
</tr>
<tr><td colspan="2" class="dx" style="text-align:center;">Crea</td></tr>
</table>
La mia funzione riesce a validare i primi due campi dato che posso utilizzare il getElementById(), ma non i radio button, dato che sono tanti, quindi non possono tutti condividere lo stesso id..
Come posso fare??