如何访问父母Div的第一个孩子Div

时间:2014-11-20 15:15:33

标签: javascript jquery html backbone.js

在div的click事件中,我正在尝试为该div的父div的第一个子节点的文本值分配一个变量。例如,html是这样的:

<div class="parentDiv">
    <div class="firstChild">
        1234
    </div>

    <div class="secondChild">
        Hello
    </div>

    <div class="thridChild">
        Bye
    </div>

</div>

所以我希望它只要点击父div中的任何内容,就可以为firstChild div分配一个变量。你会怎么做呢?

5 个答案:

答案 0 :(得分:1)

您可以使用:

var text = $('.parentDiv:nth-child(1)').html();

答案 1 :(得分:0)

您可以使用子>:first选择器的组合。像这样:

var divValue = $(".parentDiv>div:first").text();

这将选择第一个子div元素并检索它的文本值。

Here is a working example

当然,如果你有一个课程,你可以使用$(".firstChild").text();,但我认为这只是为了帮助解释这个问题。

答案 2 :(得分:0)

$(function(){
  $('.parentDiv div').click(function(){
    var $parent = $(this).closest('.parentDiv');
    //Do whatever you want with $parent
  });
});

使用jQuery tree traversal查找父(.closest位)

答案 3 :(得分:0)

.parentDiv:first-child.parentDiv:first.parentDiv:nth-child(1)甚至是 .firstChild:first-of-type

答案 4 :(得分:0)

您不希望使用第二个选择器,因为这会降低性能。 而是使用.find()

在当前元素中进行搜索
var text = 'new text';
$('.parentDiv').on('click', function() {
  $(this).find('div:first').html(text);
});