Unten ist mein Code, den ich versuche, "Benutzername Ok" im Respone-Text zu finden, und dann UserNameOk als wahr zu kennzeichnen. Ich kann das nicht funktionieren.Suche nach String in httpxml.responseText
function check_username(username)
{
var httpRequest;
make_request()
function stateck()
{
if(httpxml.readyState==4)
{
if (httpxml.responseText == "Username Ok")
{
UserNameOk = true;
}
else
{
UserNameOk = false;
}
checkCanSubmit();
document.getElementById("user_div").innerHTML=httpxml.responseText;
}
}
httpxml.onreadystatechange=stateck;
user_url="ajax_username.php?username=" + username.value;
httpxml.open("GET",user_url,true);
httpxml.send(null);
}
Unten ist mein checkCanSubmit Code
function checkCanSubmit()
{
if (UserNameOk && PasswordOk && EmailOk)
{
document.getElementById("button").disabled= false;
}
else
{
document.getElementById("button").disabled= true;
}
}
Jede Hilfe Dank geschätzt wird.
Ich habe gerade die Länge (httpxml.responseText.length) überprüft und es sagt seine 40? Ich habe auch gerade die Antwort alarmiert und überprüft sein "Benutzername Ok", die es ist – Elliott
Gut 40 ist viel zu lang, es muss einige Zeichen geben, die Sie nicht sehen. Eine schnelle Lösung für Sie könnte sein: 'if (httpxml.responseText.indexOf (" Benutzername Ok ")> = 0)' Aber wenn Sie wirklich herausfinden wollen, was diese unsichtbaren Zeichen sind, könnten Sie versuchen: ' alert (escape (httpxml.responseText)); ' Ich frage mich, ob es so etwas wie"
Benutzername Ok "(37 Zeichen) sein wird. alert() blendet die Tags wahrscheinlich aus. ;) – joeytwiddleDanke ich benutzt (httpxml.responseText.indexOf ("Benutzername Ok")> = 0) Scheint zu arbeiten :) – Elliott