Salve, vorrei fare in modo che sia selezionato almeno un prodotto del form, e qualora non ne sia stato selezionato nemmeno uno deve apparire un messaggio di errore...
Ho scritto questo, ma oltre a non funzionare correttamente non riesco a dirgli di non inviare i dati...
(ossia la popup appare ma va lo stesso alla pagina successiva).
Codice PHP:
<!--
function validate() {
var item_1 = document.form_acquisti.item_1.value;
var item_2 = document.form_acquisti.item_2.value;
var item_3 = document.form_acquisti.item_3.value;
var item_4 = document.form_acquisti.item_4.value;
var item_5 = document.form_acquisti.item_5.value;
var item_6 = document.form_acquisti.item_6.value;
var item_7 = document.form_acquisti.item_7.value;
if (typeof item_1 != 'number') item_1=0;
if (typeof item_2 != 'number') item_2=0;
if (typeof item_3 != 'number') item_3=0;
if (typeof item_4 != 'number') item_4=0;
if (typeof item_5 != 'number') item_5=0;
if (typeof item_6 != 'number') item_6=0;
if (typeof item_7 != 'number') item_7=0;
var sum = (item_1+item_2+item_3+item_4+item_5+item_6+item_7);
var email = document.form_acquisti.fieldEm.value;
if ((sum <= 0) || (sum == "") || (sum == "undefined")) {
alert("Nessun prodotto selezionato!");
document.form_acquisti.item_1.focus();
return false;
} else if ((email.indexOf("@") == (-1)) || (email == "") || (email == "undefined")) {
alert("Inserire un indirizzo email valido.");
document.form_acquisti.fieldEm.focus();
return false;
}
var pagam = document.form_acquisti.elements['pag[]'];
var r = 0;
for (var i=0; i<pagam.length; i++) {
if(pagam[i].checked) r++; // conta il numero di checkbox settate
}
if(r == 0) {
alert( 'Devi scegliere almeno una' ) ;
return false;
}
}
//-->
Il bottone invia l'ho settato così:
<input name="submit" type="submit" value="Invia" onClick="validate()">
p.s. lo script di email invece non funzia proprio =_='