webForumDet fria alternativet

validering vill inte fungera

JavaScript

3 svar · 362 visningar · startad av Mika3l

Medlem sedan nov. 20018 492 inlägg
Frågan#1

Hejsan!
Sitter med ett förmodligen väldigt enkelt problem. Har gjort en formulärvalidering och allt fungerar fint utom sista kollen, händer inget när jag använder !, fungerar däremot bra utan men det fungerar inte för mig. Vill kolla så att värdet är ett visst tal, i det här fallet 10.

String.prototype.isValidEmail = function(){
	return !!this.match(/^([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9\.\-\_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)
}
function validateForm() {
	if (document.f.amount.value=="") {
		alert("Please, state how many books you want to order.");
		return false;
	} else if (document.f.name.value=="") {
		alert("Please, state your name.");
		return false;
	} else if (document.f.adress.value=="") {
		alert("Please, state your adress.");
		return false;
	} else if (document.f.zip.value=="") {
		alert("Please, state your postal/zip code.");
		return false;
	} else if (document.f.city.value=="") {
		alert("Please, state your city.");
		return false;
	} else if (document.f.country.value=="") {
		alert("Please, state your country.");
		return false;
	} else if (!document.f.email.value.isValidEmail()) {
		alert("The stated email adress is not valid.");
		return false;
	} else if (!document.f.email.value==document.f.emailretype.value) {
		alert("The stated email adresses is not alike, please check the spelling.");
		return false;
	} else if (document.f.phone.value=="") {
		alert("Please, state your telephone number.");
		return false;
	} else if (document.f.anti.value=="") {
		alert("Please, state the mathematical question.");
		return false;
	} else if (!document.f.anti.value=="10") {
		alert("You've answered wrong on the last question. Please have a look at it.");
		return false;
	}
}
Medlem sedan feb. 20034 441 inlägg
#2

Blir det någon skillnad med:

} else if (document.f.anti.value != "10") {
	alert("You've answered wrong on the last question. Please have a look at it.");
	return false;
}

..alltså att du byter plats på !.

Medlem sedan aug. 20039 340 inlägg
#3
if (!(document.f.anti.value=="10"))

eller mycket hellre

if (document.f.anti.value!="10")

För övrigt hjälper inte ett sådant antispam-test ett skvatt om du inte kollar på serversidan också, men det vet du förhoppningsvis redan.

Medlem sedan nov. 20018 492 inlägg
#4

tackar! :)

258 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)
128 ms — ändringar (db)