Javascript 使用E4X处理通过Ajax返回的XML?
我正在通过Ajax加载一些XML 以下是脚本的一个片段:Javascript 使用E4X处理通过Ajax返回的XML?,javascript,xml,ajax,e4x,Javascript,Xml,Ajax,E4x,我正在通过Ajax加载一些XML 以下是脚本的一个片段: ajaxRequest.onreadystatechange = function() { if(ajaxRequest.readyState == 4) { document.getElementById('loading').innerHTML = 'done'; google_xml = ajaxRequest.responseXML;
ajaxRequest.onreadystatechange = function()
{
if(ajaxRequest.readyState == 4)
{
document.getElementById('loading').innerHTML = 'done';
google_xml = ajaxRequest.responseXML;
document.getElementById('xml').innerHTML = 'XML: '+google_xml.toXMLString();
}
}
我正在加载的页面是一个XML文件,该文件会加载,因为如果我发出警报(ajaxRequest.responseText);我看到了。但我不确定如何将其作为XML处理,我以为上面的脚本会将XML作为字符串放入元素中,但事实并非如此
我在Actionscript中使用E4X处理XML很多,但在JS中从未使用过,有人能给我一个提示吗?谢谢 我不确定您使用的是什么浏览器,但是 不过,为了进一步说明这个答案,您可能需要了解另一种选择:
浏览器中有很多对解析XML的支持,只是E4X不支持。您可能希望使用jQuery并使用dataType:XML。请参见xml.com/pub/a/,我不确定您使用的是什么浏览器,但是 不过,为了进一步说明这个答案,您可能需要了解另一种选择:
浏览器中有很多对解析XML的支持,只是E4X不支持。您可能希望使用jQuery并使用dataType:XML。请参见xml.com/pub/a/只需使用xhr.responseXML,它在请求完成后已经是一个支持DOM的xml对象。如果浏览器支持XmlHttpRequest对象,那么它应该可以直接工作。此外,IIRC还可以使用jQuery包装对象,并使用它自己的find/each方法遍历对象。只需使用xhr.responseXML,它在请求完成后已经是一个支持DOM的XML对象。如果浏览器支持XmlHttpRequest对象,那么它应该可以直接工作。此外,IIRC还可以使用jQuery包装对象,并使用它自己的find/each方法来遍历对象。对于后面提出相同问题的人: var x=新XML(“字符串值”)
…现在,您的x值是一个xml对象,可以使用E4X进行操作 对于那些提出同样问题的人: var x=新XML(“字符串值”)
…现在,您的x值是一个xml对象,可以使用E4X进行操作 真的吗?这太糟糕了。不管我使用什么浏览器,这都是为我的用户而不是为我而设的……这对我的整个应用程序造成了很大的影响(在浏览器中有很多对解析XML的支持,只是E4X不支持。您可能想使用jQuery并使用dataType:XML。看到了吗?这太糟糕了。不管我在哪个浏览器上,这都是为我的用户而不是为我而设的……这对我的整个应用程序造成了很大的影响。)(浏览器中有很多对解析XML的支持,只是E4X不支持。您可能希望使用jQuery并使用dataType:XML。请参阅