Javascript 如何访问父Div的第一个子Div
在一个div的click事件中,我试图将该div父div的第一个子级的文本值分配给一个变量。例如,html如下所示:Javascript 如何访问父Div的第一个子Div,javascript,jquery,html,backbone.js,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="thridChi
<div class="parentDiv">
<div class="firstChild">
1234
</div>
<div class="secondChild">
Hello
</div>
<div class="thridChild">
Bye
</div>
</div>
1234
你好
拜伊
因此,我希望它在每次单击父div中的任何内容时都为firstChild div的文本值分配一个变量。您将如何执行此操作?您可以使用child
和的组合:first
选择器。像这样:
var divValue = $(".parentDiv>div:first").text();
这将选择第一个子div元素并检索它的文本值
当然,如果你有一个类,你可以使用$(“.firstChild”).text()代码>但我认为这只是为了帮助解释问题。您可以使用:
var text = $('.parentDiv:nth-child(1)').html();
使用jQuery查找父项(最接近的位).parentDiv:第一个子项
或
.parentDiv:first
或
.parentDiv:n个孩子(1)
甚至
.firstChild:第一种类型
您不想使用第二个选择器,因为这会导致性能降低。
相反,请使用.find()
或的可能副本
$(function(){
$('.parentDiv div').click(function(){
var $parent = $(this).closest('.parentDiv');
//Do whatever you want with $parent
});
});
var text = 'new text';
$('.parentDiv').on('click', function() {
$(this).find('div:first').html(text);
});