Archief - JS: function probleem

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

M0by

Legacy Member
Hallo,

Ik ben bezig met een mini-projectje en nu had ik mijn formulier willen valideren met javascript/ajax.

Ik heb voor iedere handeling een functie gemaakt dus even concreet:
  • functie om nickname te checken
  • functie om te checken of de nickname nog beschikbaar is
  • functie om e-mailadres te checken
  • functie om te checken of het e-mailadres nog beschikbaar is
  • functie om t...

Voorbeeld functie:
Code:
function CheckDublicateNickname() 
{
	var http = createREQ();
	var divReturn = $('return');
	http.onreadystatechange = function() {
		if(http.readyState == 4) {
			if (http.responseText == $('nickname2').value) {
				divReturn.innerHTML = "<p class='reg_error'>Nickname bezet!</p>";
				document.nicknameSrc.src = "img/ico.cross.png";
				$('nickname2').focus();
				return false;
			} else if (http.responseText == "No Result") {
				divReturn.innerHTML = "";
				document.nicknameSrc.src = "img/ico.accept.png";
				return true;
			} else if ($('nickname2').value == '') {
				divReturn.innerHTML = "<p class='reg_error'>Vul een nickname in!</p>";
				document.nicknameSrc.src = "img/ico.cross.png";
				$('nickname2').focus();
				return false;
			}
		}
	}
	http.open("POST", "php/modules/CheckDublicateNickname.php");
	http.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
	http.send("nickname=" + $('nickname2').value)
}

Dus... Nu wil ik een functie die alle velden nog eens dubbel checkt

Code:
function CheckRegistrationForm()
{
	var msg = "Volgende velden zijn niet of onjuist ingevuld: \n\n";
	var error = false;
	var nickname = $('nickname2').value;
	var email = $('email').value;
	var captcha = $('security_code').value;
	
	if (nickname == "") { 
		msg += "- Nickname \n"; 
		var error = true; 
	} 
	if (email == "") { 
		msg += "- E-mailadres \n"; 
		var error = true; 
	}
	if (captcha == "") {
		msg +="- Controle \n";
		var error = true;
	}
	if (error) { 
		alert(msg); return false;
	}
	if (CheckDublicateNickname() == true) {
		alert("test");
	}
}

Nu wanneer CheckDublicateNickname() true is, moet hij gegevens via AJAX (die ook in een functie gestoken worden) uitvoeren anders niet.

Dit is nu het probleem: CheckDublicateNickname() == true werkt helemaal niet terwijl ik telkens in iedere if een return true of return false meegeef.

Ik hoop dat iemand me kan helpen?

Alvast bedankt,
M0by :doc:

Cycloon

Legacy Member
Die == true is natuurlijk volledig overbodig. if (CheckDublicateNickname()) {} zal namelijk hetzelfde doen. Maarja dit zal je probleem niet oplossen denk ik.

Duplicate is trouwens met een p.
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan