看起来它适用于Safari和Firefox,但不适用于IE。我有一个任意的XML字符串,它来自Flash响应(它很复杂)。
这是一个JSFiddle,它试图在XML中找到一个简单的标记:http://jsfiddle.net/MJSa8/5/
我在其他地方读到,当谈到Ajax响应器时,你必须确保将内容类型设置为xml以使其在IE中工作,但这只是一串XML。有没有办法迫使IE将其视为XML?
编辑:同时将代码示例放在此处以供参考:
var xml ='<postresponse><location>http://something.s3.amazonaws.com/15o96sf3h1div1auj121e1oc3j1u.png</location><bucket>something</bucket><key>15o96sf3h1div1auj121e1oc3j1u.png</key><etag>"85d3db1aaeb47aecaace540c7ce7a609"</etag></postresponse>';
var len = $(xml).find('location').length;
$('#output').text(len);
答案 0 :(得分:1)
试试这个:
var xml ='<postresponse><location>http://something.s3.amazonaws.com/15o96sf3h1div1auj121e1oc3j1u.png</location><bucket>something</bucket><key>15o96sf3h1div1auj121e1oc3j1u.png</key><etag>"85d3db1aaeb47aecaace540c7ce7a609"</etag></postresponse>';
if (window.DOMParser)
{
parser=new DOMParser();
xmlDoc=parser.parseFromString(xml,"text/xml");
}
else // Internet Explorer
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(xml);
}