我有一个XML文件
<?xml version="1.0" encoding="ISO-8859-1"?>
<childrens>
<child id="1" value="Root Catalog" parent_id="0">
<child id="2" value="Apparel" parent_id="1">
<child id="3" value="Accessories" parent_id="2">
<child id="4" value="Handbags" parent_id="3">
<child id="5" value="Jewelry" parent_id="4"/>
</child>
</child>
</child>
</child>
</childrens>
我想找到父母的特定元素
我写了这段代码
返回所有父母
$(document).ready(function(){
$.ajax({
type: "GET",
url: "test.xml",
dataType: "xml",
success: function(xml) {
$(xml).find('child[value="test"]').parents().each(function(){
var i = $(this).attr('value');
alert(i);
});
}
});
});
我希望家长到id=2
和value=Apparel
如果我使用.parents('[value="Apparel"]')
,那么它只会返回一个Apparel
答案 0 :(得分:1)
您可以使用parentsUntil:
$(xml).find('child[value="test"]').parentsUntil('[value="Apparel"]').each( ...
来自文档:
获取当前匹配组中每个元素的祖先 元素,最多但不包括选择器匹配的元素, DOM节点或jQuery对象。