在发出Ajax请求并接收XML作为响应之后,有一些XML已经预先格式化为HTML。我只想从XML中抓取一个节点并将其注入DOM。响应中还有其他纯XML节点。或多或少的XML看起来像。
<xml>
<div id="foo">
<div id='foo'>...
<img src="foo.jpg"/>
</div>
</div>
<node></node>
<node></node>
<node></node>
<node></node>
</xml>
所以,如果我想抓住div节点,并将其注入DOM,我可以用
之类的东西来做 var e = this.responseXML.getElementById('foo');
$('#container').html(e);
问题在于,当注入html时,图像不会以任何方式下载。如果我使用responeTEXT,图像将下载,但我得到了我不想要的所有其他XML。
有人知道注入时未下载图像的主要原因吗?或者如何让他们这样做?
答案 0 :(得分:0)
好的找出解决这个问题的最佳方法。我无法让responseXML以我想要的方式运行jQuery。我能够使用XUIjs,但它以不同的方式处理对象,并且需要不同的选择器包装并从对象数组中提取项目。我找到的最佳解决方案是使用responseText,它似乎被视为HTML。
var e = this.responseText;
$('#container').html(e.find("#items"));
这样可以很好地加载东西并使图像按预期得到请求。