totalNooob
Grünschnabel
hallo forum,
ich bin ajax anfänger und weis einfach nicht mehr weiter. ich habe folgendes problem:
die javascript funktion nicknameValidation() ruft die datei test2.php auf und bekommt 0 oder 1 zurück.
bedingung wenn NULL, dann soll die variable "checkVar" auf 11 gesetzt werden andernfalls auf 22 und anschließend "checkVar" mit return zurückgeben.
eigentlich ganz einfach aber ich finde den fehler einfach nicht, zumal es mal funktioniert hat. der übersichtlichkeit und fürs bugfinding habe ich alles unwesendliche schon zuvor rausgefiltert. mein code sieht folgendermaßen aus:
ich bin ajax anfänger und weis einfach nicht mehr weiter. ich habe folgendes problem:
die javascript funktion nicknameValidation() ruft die datei test2.php auf und bekommt 0 oder 1 zurück.
bedingung wenn NULL, dann soll die variable "checkVar" auf 11 gesetzt werden andernfalls auf 22 und anschließend "checkVar" mit return zurückgeben.
eigentlich ganz einfach aber ich finde den fehler einfach nicht, zumal es mal funktioniert hat. der übersichtlichkeit und fürs bugfinding habe ich alles unwesendliche schon zuvor rausgefiltert. mein code sieht folgendermaßen aus:
Code:
<html>
<head>
<title>test</title>
<script type="text/javascript">
function nicknameValidation(){
var checkVar = 0;
var req = null;
try{
req = new XMLHttpRequest();
}
catch (ms){
try{
req = new ActiveXObject("Msxml2.XMLHTTP");
}
catch (nonms){
try{
req = new ActiveXObject("Microsoft.XMLHTTP");
}
catch (failed){
req = null;
}
}
}
if (req == null)
alert("Error creating request object!");
req.open("GET", "test2.php?test=1", true);
req.onreadystatechange = function(){
switch(req.readyState) {
case 4:
if(req.status!=200) {
alert("Fehler:"+req.status);
}else{
var nick = req.responseText;
if(nick==true){
checkVar=11;
}else {
checkVar=22;
}
/* alert(checkVar); hier ausgabe test*/
/* return checkVar;*/
}
break;
default:
/* alert("fehler default"); */
break;
}
};
req.setRequestHeader("Content-Type",
"application/x-www-form-urlencoded");
req.send(null);
/* return checkVar;*/
return checkVar;
}
</script>
</head>
<body>
<script language="javascript">
var nick = nicknameValidation();
alert(nick);
/* hier sollte eigentlich nick = 11 oder 22 sein,
stattdessen ist checkVar immer NULL und wenn ich
var checkVar = 0; ganz am anfang der funktion rausnehme,
dann ist checkVar "undefined"
wenn ich mir checkVar per alert ausgeben lasse ( stelle:ausgabe test),
dann ist checkVar richtig gesetzt. nämlich 11 oder 22
*/
</script>
</body>
</html>
Vielen Dank schonmal im vorraus
mfg