如何使用原型获取锚标记的父ID?

时间:2010-07-20 10:37:02

标签: javascript html prototypejs

Event.observe(window, 'load',
function() { 

    $$('a.tag_links').each(function(s) {
        //alert(s.parent.parent.id); //How to get id of its parent to parent
    });
}
);

我想获取父元素的id。

结构是这样的。

 <div class="home-page" id='entity-1'>
    <div class="index-page-category">

    <a href="/entities/category/food" class="tag_links">food</a>

</div>

结果应为entity-1

2 个答案:

答案 0 :(得分:11)

像这样:

    $$('a.tag_links').each(function(s) {
        var parentid = $(s).up('div').id;
    });

答案 1 :(得分:0)

首先,您的HTML不完整。它看起来像是:

<div class="home-page" id='entity-1'>
    <div class="index-page-category"></div>

    <a href="/entities/category/food" class="tag_links">food</a>

</div>

或者像这样:

<div class="home-page" id='entity-1'>
    <div class="index-page-category">

       <a href="/entities/category/food" class="tag_links">food</a>

    </div>
</div>

无论哪种方式,您都应该通过使用:

来实现这一目标
$$('a.tag_links').each(function(s) {
   var divId = $(s).previous('div.home-page').id;
});

我想你在'a.tag_links'中迭代的原因是你有一堆链接?基于该上下文,HTML结构是否始终一致(外部div总是包含一个“主页”类)?