0

我有一个 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=2value=Apparel

如果我使用.parents('[value="Apparel"]'),那么它将只返回一个名称,即Apparel

4

1 回答 1

1

您可以为此使用parentsUntil

$(xml).find('child[value="test"]').parentsUntil('[value="Apparel"]').each( ...

从文档:

获取当前匹配元素集合中每个元素的祖先,最多但不包括选择器、DOM 节点或 jQuery 对象匹配的元素。

于 2013-01-29T13:47:09.280 回答