我正在使用这样的XML文件:
<Test>
<Unit>
<Title>Test 1</Title>
<Date>01/07/2011</Date>
<Content format="html"><![CDATA[Here goes some content]]></Content>
</Unit>
<Unit>
<Title>Testing New XML</Title>
<Date>27/06/2011</Date>
<Content format="html"><![CDATA[Here goes some content]]></Content>
</Unit>
<!-- A lot of stuff like this -->
</Test>
我想使用jQuery在XML文档中搜索给定的<Title>
并获取其整个<Unit>
,因此我可以使用这样的值:
function append(title, date, content) {
$("#Unit").append("<h1 id='title'><b>" + title + "</b></h1><h2 id='date'>" + date + "</h2><p>" + content + "</p>");
}
我该怎么做?
PS:我一直在使用this作为我的XML阅读基础
答案 0 :(得分:4)
这是你要找的吗? Click Here(jsFiddle链接)
在该代码中,您必须首先获取XML并将其存储在变量中,就像我一样。代码可能不是您正在寻找的,但它可能是一个很好的起点。玩这些代码,让我知道这是否是您正在寻找的。 p>
您也可以尝试这个(与jsFiddle链接相同的代码,但只使用警报而不是将数据附加到DOM)
var xml = "<Test><Unit><Title>Test 1</Title><Date>01/07/2011</Date><Content format='html'>some content here</Content></Unit><Unit><Title>Testing New XML</Title><Date>27/06/2011</Date><Content format='html'>some more content here</Content></Unit></Test>";
$(xml).find("Unit").each(function(){
if($(this).find("Title").length > 0){
var unitData = $(this).text();
alert(unitData);
}
});
这应该会给你两个警告。
答案 1 :(得分:2)
$("#Unit")
选择ID为“unit”的所有元素。
要选择所有单位元素,请使用$("Unit")
编辑:如果变量中有Title元素,则可以使用$(myTestVariable).closest("Unit")
答案 2 :(得分:1)
选择器#Unit
查找id
属性等于"Unit"
的节点。
您需要选择器Unit
,它会查找Unit
个节点。