如何获得接近按钮点div的文本
问题描述:
我试图让按钮被点击的父div内的一些div的文本。这是一个示例代码如何获得接近按钮点div的文本
这里parentDiv重复夫妇divToFind的时间和文本是在每个parentDiv不同。每当在parentDiv中点击删除按钮时,我想获取divToFind的文本。
我已经试过这
$(this).closest('.parentDiv').children('#divToFind').text();
但没有什么是返回
答
不要在单个文档中使用相同的ID。你应该使用类来代替。随着课堂,它工作正常。
在中提到,文档中不能有多个元素具有相同的id值。
$(function(){
$("button").on("click", function(){
var t = $(this).closest('.parentDiv').children('.divToFind').text();
console.log(t);
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="parentDiv" >
<div class="divToFind" style="display:none">text</div>
<div class="btn-group">
<button class="button" type="button" >Remove</button>
</div>
</div>
<div class="parentDiv" >
<div class="divToFind" style="display:none">text2</div>
<div class="btn-group">
<button class="button" type="button">Remove</button>
</div>
</div>
答
是的,它真的,你不应该使用相同的ID为HTML文档中的2个元素,但是下面是代码,可以帮助你得到给出的div的文本。
有2种方式:
$(this).parent().prev('#divToFind').text();
$(this).parent().prev().text();
prev和next让我们穿越在同一水平上。你可以在里面提供选择器来获得特定的元素。
在你的例子中它的ID,你可以更新ID到一些CSS类,这样你就不必拥有具有相同ID的元素。
请勿在单个文档中使用两个相同的ID。 –
有趣的人给-1没有告诉为什么。是因为有问题还是因为他们不喜欢你犯了错误。如果是后者则是击败了整个stackoverflow的目的。就像不鼓励一个人提问一样。 – jas
@jss澄清,我没有**给你-1。我认为这个问题很好。 –