获得父div兄弟标签

时间:2011-11-15 11:04:55

标签: jquery

我想编写一个函数,当上面点击clipartcategory的{​​{1}}标记时,<h3>标记内部<a>标记我想获取<a>的内容}。以下是我的代码

<h3><a href="#section1">Arrows</a></h3>
<div>
    <ul>
    <li class="clipartcategory">Custom</li>
    <li class="clipartcategory">Standard</li>
    </ul>
</div>
<h3><a href="#section2">Borders</a></h3>
<div>
    <ul>
    <li class="clipartcategory">CornersStandard</li><li class="clipartcategory">Embellished Outline</li>
    <li class="clipartcategory">Simple Outline</li><li class="clipartcategory">Solid</li>
    </ul>
</div>

我知道父母的功能会给我<div>,但我怎样才能达到<h3>之上并获得<a>内容

2 个答案:

答案 0 :(得分:1)

假设您的HTML始终遵循该结构:

$(".clipartcategory").click(function() {
    var aText = $(this).closest("div").prev().find("a").text();
});

这是一个working example。您在提问中提到了parent方法。我使用了closest因为div不是.clipartcategory的父级。 closest方法将找到与选择器匹配的最接近的祖先元素。

答案 1 :(得分:0)

@James Allardice是完全正确的。我只是给出了另一个问题的解决方案:

$(".clipartcategory").click(function() {
    var acontent = $(this).parent().parent().prev().find("a").text();
});

如果您认为可能包含带有文字的html标记,您也可以使用.html()替换.text()