jQuery 通过按类搜索来获取元素的 id

标签 jquery dom jquery-traversing

这是我的 html :

<div id="my_box_one" class="head-div">
   <div>
       <div class="some_box">a</div>
       <div class="some_box">b</div>
    </div>
</div>

我想使用该 div 的类(“.head-div”)获取父 div(“#my_box_one”)的 ID

$(document).ready(function(){

$(".some_box").click(function(){
   var abc = $(this).parentsUntil(".head-div").attr("id");
   // also tried $(this).parent(".head-div") -- same effect
   alert(abc); // Shows as Undefined
});   

});

我可以执行以下操作,它会正常工作,但它似乎不正确。

var abc = $(this).parent("div").parent("div").attr("id");

最佳答案

您可以使用.closest(选择器),例如:

var abc = $(this).closest(".head-div").attr("id");

http://api.jquery.com/closest/

.parent(选择器)仅选择元素的直接父元素。

关于jQuery 通过按类搜索来获取元素的 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5841650/

相关文章:

php - DataTables YajraBox Laravel 扩展与 Eloquent 查询字符串过滤

javascript - 单击后如何禁用单击图标?

javascript - 如何在 DOM 更改后更新存储在变量中的 jQuery 对象?

javascript - 如何使用 JQuery 将检索到的无序列表的 <li> 元素放在另一个无序列表的末尾?

Jquery ajax 调用提示不起作用

javascript - 真实网址不适用于由 javascript TYPO3 构建的网址

javascript - 在元素下方对齐一个 div 并水平居中

javascript - 如何在html表格中添加动态行?

jQuery nextUntil,包括,不排除匹配的元素?

jquery - 按时间顺序对类别进行排序