我已經創建了一個使用JQuery解析XML的JavaScript程序。以下是代碼和示例XML。運行這個時,IE 8可以正常工作。但是,當我在Chrome或FireFox中測試時,$ .parseXML會加載xml。我沒有看到任何錯誤,它只是停止。我已經發出警報,看看它在哪裏停止以確定問題。誰能幫忙?我不明白爲什麼jQuery在IE 8中工作,而不是Chrome或Firefox。
XML是簡單
<?xml version="1.0" ?>
<userinfo>
<rc>Y</rc>
<un>George</un>
</userinfo>
或
<?xml version="1.0" ?>
<userinfo>
<rc>N</rc>
<un></un>
</userinfo>
已創建使用JQuery XML的JavaScript腳本,但只工作在IE 8
function userLookup(v_page, v_uid, v_pwd)
{
var xmlHttp;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
try
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e)
{
alert("Browser does not support AJAX!");
return false;
}
}
}
xmlHttp.onreadystatechange= function(){
if(xmlHttp.readyState==4)
{
var xml = xmlHttp.responseText;
var xmlDoc = $.parseXML(xml);
var $xml = $(xmlDoc);
var $returncode = $xml.find("rc");
if($returncode.text() == 'N')
{
alert("Invalid Userid/Password");
}
else if ($returncode.text() == 'Y')
{
document.getElementById('WelcomeMessage').innerHTML = "Welcome " + loginuser;
document.getElementById('dialogLogIn').style.display = 'none';
} else {
alert($returncode.text());
}
}
}
xmlHttp.open("GET",v_page+"?v_uid="+v_uid+"&v_pwd="+v_pwd,true);
xmlHttp.send(null);
}
在沒有ajax的情況下測試它。它對我來說工作得很好:http://jsfiddle.net/Tentonaxe/66XFw/ || http://jsfiddle.net/Tentonaxe/66XFw/1/調試101.刪除額外的錯誤發生的確切位置。這不是由於'$ .parseXML'在這種情況下。 –
我也這樣做了,拿出了XML的呼籲,只是把XML插入,它工作正常。我開始玩xml文件,我從xml返回中刪除了<?xml version =「1.0」?>,它也開始在我的應用程序中工作。將研究.ajax以及在jQuery中獲取所有內容,認爲它會更穩定,謝謝。 –