返回undefined的jquery xml属性

时间:2013-02-25 04:11:38

标签: jquery xml parsing

我无法弄清楚这一点并且暂时搞砸了它。

XML:

<page name="bio">
<image imageUrl="img/bio.png" link="#"/>
<texts>
<pageText><![CDATA[blah
]]></pageText>
</texts>
</page>

的jQuery

$.get('../tfile_main.xml', function(xml){
$varbioimg = $(xml).find('page[name="bio"] image');
alert($varbioimg.attr('imageUrl'));
});

由于某种原因返回undefined,我也试图找到('page [name =“bio”]&gt; image')

2 个答案:

答案 0 :(得分:3)

尝试.parseXML,不建议使用jQuery的css选择器来解析xml

var xml = '<page name="bio"><image imageUrl="img/bio.png" link="#"/><texts><pageText><![CDATA[blah]]></pageText></texts></page>';

xmlDoc = $.parseXML( xml );
$xml = $( xmlDoc );    
console.log($xml.find('page[name="bio"] image'));

这是演示http://jsfiddle.net/FVHEU/

答案 1 :(得分:0)

当我第二次使用.parseXML时,我还要提到你原来的例子对我有用。确保您的XML文件与您在此处发布的文件完全匹配(在顶部添加了<?xml version="1.0">)并使用Firefox导航到XML文件的URL;它会告诉你是否有任何解析错误。