Ich habe diesen Code, der in FireFox, Chrome und IE8 funktioniert, aber es funktioniert nicht auf IE6 und IE7.Problem läuft AJAX richtig auf IE6 und IE7
function GetXmlHttpObject() {
//var xmlHttp = null;
try {
xmlHttp = new XMLHttpRequest();
} catch (e) {
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
function login()
{
alert("Entered Login()");
var url="http://server.com/ALUauth.php";
xmlhttp.onreadystatechange=statechangedLogin;
xmlhttp.open("GET", url, true);
xmlhttp.send(null);
}
function statechangedLogin()
{
if(xmlhttp.readyState==4)
{
alert("Entered State Changed Login");
if (xmlhttp.responseText=="Please <a href=http://server.com/ALUauth.php?login>login</a>")
{
document.getElementById("ALUauth").innerHTML=xmlhttp.responseText;
}
else
{
GetEmailId();
}
}
}
function GetEmailId()
{
alert("Entered GetEmailId()");
var url="http://server.com/GetPostEmail.php";
url=url+"&sid="+Math.random();
xmlhttp.onreadystatechange=statechangedLogin2;
xmlhttp.open("GET", url, true);
xmlhttp.send(null);
}
function statechangedLogin2()
{
if(xmlhttp.readyState==4)
{
alert("Enter State Changed Login 2");
if(xmlhttp.responseText=="Login again")
{
window.location="http://server.com/profile.html";
}
}
}
Wenn ich den Code in jedem anderen Browser außer für IE6 laufen und 7 der Ausgang zeigt mir alle Alarmboxen ab: - Eingetragen Login() - Eingetragen Zustand geändert Anmelden - Eingetragen GetEmailId() - Geben Sie Zustand geändert Anmelden 2
und dann die Fensterposition Änderungen an http://server.com/profile.html
aber wenn ich die gleiche Sache auf IE 6 oder 7 ausführen, wird der Code geht nicht in die statechangedLogin2()
, und so die nur Warnungen Ich bekomme hier sind:
- Eingetragen Login()
- Eingetragen Staat Anmeldung geändert
- GetEmailId Eingetragen()
Ich bin nicht in der Lage, um herauszufinden, warum dieses Problem wird auftreten. Warum passiert es und was sollte ich ändern? Das Projekt funktioniert absolut gut auf anderen Browsern einschließlich IE8.
Kann mir jemand helfen, dieses Problem zu lösen?
Gibt es einen Grund für nicht Ajax-Bibliothek von einer Art mit , wie jQuery?Auch, bitte markieren Sie Ihre Code-Abschnitte als Code (die 101010-Taste) –