0

我有一个接受 XML 输入的脚本,我想将它转换为 JQuery 对象,以便我可以轻松地遍历它。

这是我使用的代码:

var xmlInput = 
'<content>'+
    '<action xsi:type="number">'+
    "123"+
    '</action>'+
'</content>';
var object = $(xmlInput);
alert(object);
alert(object.html());
object.find("action").each(function() {
    var type = $(this).attr("xsi:type");
    alert("action! type="+type);
});

(可在线获取:http: //irsrv2.cs.biu.ac.il:8080/GeniusWeb/ jqueryTest.html

这在 Firefox 和 Chrome 中运行良好:

  • 第一个警报显示“对象”,
  • 第二个警报显示了内部的“动作”元素,
  • 第三个警报显示“action!type=number”。

但是,在 MSIE 8 中,这显然不起作用:

  • 第一个警报显示“对象”,
  • 第二个警报显示一个空字符串。
  • 并且没有第三次警报。

我应该怎么做才能使代码在 IE 8 中也能工作?

4

1 回答 1

1

使它成为一个 xml 文档,而不是一个带有无效 html 的 HTML 片段(IE 正确地阻塞了它)

var xmlDoc = $.parseXML(xmlstring);

$(xmlDoc).doSomething()
于 2012-10-17T15:27:52.337 回答