我对此进行了编程以检查我的表单数据,但是,它不起作用。首先,我检查所有值,如果它们为空,那么我检查电子邮件地址是否有效,然后检查是否选中了复选框。
当我提交没有输入值的表单时,它会成功加载action="#"
中指定的文档,这不应该因return false;
而发生。
function validateForm() {
var meno = document.forms["registracia"]["meno"].value;
var priezvisko = document.forms["registracia"]["priezvisko"].value;
var telefon = document.forms["registracia"]["telefon"].value;
var email = document.forms["registracia"]["email"].value;
var vek = document.forms["registracia"]["vek"].value;
var praca = document.forms["registracia"]["praca"].value;
var motto = document.forms["registracia"]["motto"].value;
var osoba = document.forms["registracia"]["osoba"].value;
if (meno == null || meno =="" || priezvisko == null || priezvisko =="" ||
telefon == null || telefon =="" || email == null || email =="" ||
vek == null || vek =="" || praca == null || praca =="" ||
motto == null || motto =="" || osoba == null || osoba =="" ||) {
alert("Musíte vyplniť všetky údaje.");
return false;
}
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
if(!re.test(email)) {
alert("Zadajte platnú e-mailovú adresu.");
return false;
}
if(!document.forms["registracia"]["suhlas"].checked) {
alert("Musíte súhlasiť s uverejnením vašej fotografie.");
return false;
}
}
答案 0 :(得分:1)
在||
条件结束时您还有一个if
。你也可以让它更具可读性,见下文。
function validateForm() {
var form = document.forms["registracia"];
if ( !form.meno.value
|| !form.priezvisko.value
|| !form.telefon.value
|| !form.email.value
|| !form.vek.value
|| !form.praca.value
|| !form.motto.value
|| !form.osoba.value ) {
alert("Musíte vyplniť všetky údaje.");
return false;
}
var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
if(!re.test(form.email.value)) {
alert("Zadajte platnú e-mailovú adresu.");
return false;
}
if( !form.suhlas.checked ) {
alert("Musíte súhlasiť s uverejnením vašej fotografie.");
return false;
}
}