我想从嵌套的div中获取id的值 - jquery

时间:2010-06-15 12:12:48

标签: jquery

我想获得#inner2

的.text()
<div class="outer" id="outer">

<div id="inner1" class="inner">test1</div>
<div id="inner2" class="inner">test2</div>
<div id="inner3" class="inner">test3</div>


</div>

这是我正在使用的jquery函数

$('.outer').bind('click',function() {


var one = $('#inner'+x).attr('id');
alert(one);


});

问题是第一个#id值显示在警报中。

由于

4 个答案:

答案 0 :(得分:2)

$('。outer')。bind('click',function(){

var one = $('#inner2').attr('id');
alert(one);

答案 1 :(得分:2)

您可以使用.each遍历类名为inner的div,然后获取ID。

$('.outer').bind('click',function() {
    $("div.inner").each(function(){
        alert ($(this).attr("id"));
    });
});

如果您想要点击的ID,请使用event.target

$('.outer').bind('click',function(e) {
    alert (e.target.id);
    alert($(e.target).text()); 
    // to get text wrap e.target to a jquery object and use .text() on that
});

答案 2 :(得分:1)

$('.outer').bind('click',function() {


  var one = $('#inner2').text();
  alert(one);


});

答案 3 :(得分:0)

如果只是在点击时检索inner2:

$("#outer").click(function() {
  alert($("#inner2").text());
});

但是如果你真的想要获取被点击的内部div的文本,那么以下代码将起作用:

$("#outer .inner").click(function() {
  alert($(this).text());
});

如果要检索ID,请将text()更改为attr('id')