Citat:
Ursprungligen postat av martine
Citat:
Ursprungligen postat av Urme
Det verkar som den aldrig kör req.open etc i checkEmail dock, utan den hoppar direkt till …
|
Det är möjligt att exemplet inte fungerar utan vidare, skrev bara ihop det lite snabbt.
Är http-req-objektet verkligen skapat?
I princip ska exemplet fungera i alla fall.
|
ja det är den, här är hela koden, jag kanske har missat nåt helt men har kollat igenom det ett par gånger.
Kod:
function createXMLHttpRequest() {
var ua;
if(window.XMLHttpRequest) {
try {
ua = new XMLHttpRequest();
} catch(e) {
ua = false;
}
} else if(window.ActiveXObject) {
try {
ua = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
ua = false;
}
}
return ua;
}
var req = createXMLHttpRequest();
var epost = "";
var wait = false;
function nybokstav(x) {
epost=x;
checkEmail();
}
function checkEmail() {
if(req.readyState == 0 || req.readyState == 4) {
req.open("GET", "includes/ajax/newsubscriber.ajax.php?action=checkemail&email="+escape(epost), true);
req.onreadystatechange = handleCheckEmailResp;
req.send(null);
} else {
wait = true;
document.getElementById('validtext').innerHTML = "Väntar...";
}
}
function handleCheckEmailResp() {
if(req.readyState == 4){
if(req.status == 200) {
if (req.responseText == "Valid!") {
document.getElementById('validimage').innerHTML = "<img src=\"images/valid.png\" alt=\"\">";
document.getElementById('validtext').innerHTML = "Godkänd!";
document.getElementById('btnSave').disabled = false;
} else if(req.responseText == "Exists!") {
document.getElementById('validimage').innerHTML = "<img src=\"images/invalid.png\" alt=\"\">";
document.getElementById('validtext').innerHTML = "Existerar!";
document.getElementById('btnSave').disabled = true;
} else if(req.responseText == "inValid!") {
document.getElementById('validimage').innerHTML = "<img src=\"images/invalid.png\" alt=\"\">";
document.getElementById('validtext').innerHTML = "Ej godkänd!";
document.getElementById('btnSave').disabled = true;
} else {
document.getElementById('validtext').innerHTML = req.responseText;
}
} else {
document.getElementById('validtext').innerHTML = "Error: Status "+req.status;
}
if(wait) {
checkEmail();
wait = false;
}
}
}