如何使用原型从包装器div获取所有外(父)div的id值?

时间:2015-02-10 19:26:45

标签: javascript html prototypejs

我想从HTML结构下面只获得第一个外部所有div的id值。

我想输出像p1,测试,外部div的内容  '" padder"中的id值(" p1,test,contents") div不是所有div的id值。我尝试下面的代码  但它返回所有div id值,但我想外部divs id  它的值如下面的html结构中的 p1,test,contents (这是我想要的外部div及其值)。

$('padder').select('div').each(function(el){
  alert($(el).id);
}); 

<div id="padder">
  <div id="p1">
    <div id="s1">
    </div><!-- Ends s1 div-->
  </div><!-- Ends p1 div-->
  <div id="test">
    <div class="subdiv">
    </div><!-- Ends subdiv div-->
  </div><!-- Ends test div-->
  <div id="contents">
    <div>
    </div><!-- Ends div-->
  </div><!-- Ends contents div-->  
</div><!-- Ends padder div-->   

1 个答案:

答案 0 :(得分:1)

您可以使用选择器#padder > div选择div的直接子项的所有#padder元素。

然后只需遍历这些元素,使用id (example)

访问el.id
$$('#padder > div').each(function(el) {
    alert(el.id);
});

您还可以将id映射到数组(example) - (不使用prototype.js)

var ids = Array.prototype.map.call(document.querySelectorAll('#padder > div'), function (el, i) {
    return el.id;
});

输出:

["p1", "test", "contents"]