jQuery通过按类搜索来获取元素的id [英] jQuery get id of element by searching for it by class

查看:95
本文介绍了jQuery通过按类搜索来获取元素的id的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的html:

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

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

  $(document).ready(function(){

$(。some_box)。click(function(){
var abc = $(this).parentsUntil(。head-div)。attr(id);
/ /也尝试过$(this).parent(。head-div) - 同样的效果
alert(abc); //显示为Undefined
});

});

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

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


解决方案

您可以使用 .closest(selector)

  var abc = $(this).closest(。head-div)。 ATTR( ID); 

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



.parent(selector)仅选择元素的直接父代。 / p>

This is my html :

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

I want to get the ID of the parent div("#my_box_one") using the class of that div(".head-div")

$(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
});   

});

I can do the following and it will work okay, but it doesn't seem right.

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

解决方案

You can use .closest( selector ), for example:

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

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

.parent( selector ) selects only immediate parent of the element.

这篇关于jQuery通过按类搜索来获取元素的id的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆