Salve a tutti,
conosco poco javascript, sicuramente sbaglio qualcosa ma non capisco cosa.
Ho un form con delle checkbox
<input type="checkbox" id="orari1" name="crea_orari[]" value="08:00">08:00
<input type="checkbox" id="orari2" name="crea_orari[]" value="08:30">08:30
<input type="checkbox" id="orari3" name="crea_orari[]" value="09:00">09:00
ecc.ecc. ne ho parecchi ncora sotto.
Devo controllare che almeno 1 sia stato selezionato.
ho uno script che viene chiamato all'invio del form che effettua i vari controlli
se nella riga:
if (document.getElementById("orari1" || "orari2" || "orari3").checked)
invece di utilizzare OR || che è ciò che a me serve, utilizzo AND && tutto funziona
mi segnala l'errore se non sono selezionati tutti gli elementi comparati.
Se lascio OR || e seleziono il primo valore "orari1" tutto ok, non da errore, ed il form
parte regolarmente.
Se seleziono invece il secondo "orari2" o il terzo "orari3", mi da errore come se nulla fosse selezionato.
Eppure è una semplice OR se uno qualsiasi dei 3 è selezionato dovrebbe essere tutto OK.
Cosa sbaglio?
Grazie.
conosco poco javascript, sicuramente sbaglio qualcosa ma non capisco cosa.
Ho un form con delle checkbox
<input type="checkbox" id="orari1" name="crea_orari[]" value="08:00">08:00
<input type="checkbox" id="orari2" name="crea_orari[]" value="08:30">08:30
<input type="checkbox" id="orari3" name="crea_orari[]" value="09:00">09:00
ecc.ecc. ne ho parecchi ncora sotto.
Devo controllare che almeno 1 sia stato selezionato.
ho uno script che viene chiamato all'invio del form che effettua i vari controlli
HTML:
<script language="JavaScript" type="text/javascript">
function controllo() {
with(document.modulo) {
if (titolo.value == "") {
alert("Errore: INSERIRE UN TITOLO");
titolo.focus();
return false;
}
if (data_f.value == "") {
alert("Errore: INSERIRE LA DATA");
data_f.focus();
return false;
}
if (document.getElementById("orari1" || "orari2" || "orari3").checked)
{
return true;
} else {
alert("Errore: SELEZIONARE ALMENO UN ORARIO");
return false;
}
}
}
</script>
se nella riga:
if (document.getElementById("orari1" || "orari2" || "orari3").checked)
invece di utilizzare OR || che è ciò che a me serve, utilizzo AND && tutto funziona
mi segnala l'errore se non sono selezionati tutti gli elementi comparati.
Se lascio OR || e seleziono il primo valore "orari1" tutto ok, non da errore, ed il form
parte regolarmente.
Se seleziono invece il secondo "orari2" o il terzo "orari3", mi da errore come se nulla fosse selezionato.
Eppure è una semplice OR se uno qualsiasi dei 3 è selezionato dovrebbe essere tutto OK.
Cosa sbaglio?
Grazie.