获取点击的li中第一个div的id

时间:2015-06-16 08:13:31

标签: javascript jquery html css

<li class="intro-item">
    <a href="...">Something</a>
        <div id="bar1"></div>
        <div id="bar2"></div>
        <div id="bar3"></div>
        <div id="bar4"></div>
        <div id="bar5"></div>
</li>

我希望在点击li时获取第一个div的ID(此处为bar1)。并且还有更多与上述相同的信息。所有这些lis也有CSS类&#34; intro-item&#34;当我点击其中的每一个时,我想得到第一个div的id。

这个想法是这样的

$('li.intro-item').click(function(){
    alert($('(this) div:first').attr('id'));// here I can't apply this keyword that's the problem.
    });

4 个答案:

答案 0 :(得分:6)

this作为上下文传递给jQuery

$('li.intro-item').click(function () {
    alert($('div:first', this).attr('id')); //or $(this).find('div:first')
});

答案 1 :(得分:5)

使用$(this)获取当前的li对象,使用.find()搜索div元素,.eq(0)用于获取第一个索引

$('li.intro-item').click(function(event){
    event.preventDefault();
    alert($(this).find('div:eq(0)').attr('id'));
});

Fiddle

答案 2 :(得分:1)

$('li.quiz-intro-item').click(function(){
   alert($(this).find("div:first").attr("id"));
});

答案 3 :(得分:1)

用这个:

<li class="intro-item">
    <a href="#">Something</a>
    <div id="bar1">1</div>
    <div id="bar2">2</div>
    <div id="bar3">3</div>
    <div id="bar4">4</div>
    <div id="bar5">5</div>
</li>
<li class="intro-item">
    <a href="#">Something</a>
    <div id="bar21">21</div>
    <div id="bar22">22</div>
    <div id="bar23">23</div>
    <div id="bar24">24</div>
    <div id="bar25">25</div>
</li>

以及javascript和jQuery的这个片段:

$("li.intro-item").click(function () {
    // this is the 'clicked' DOM Element
    // use $(this) to wrap it into a jQuery wrapped set
    alert($(this).find("div:first").attr('id'));
});

你有可点击的li,打开一个带有id的警报 李的第一个div。