代码之家  ›  专栏  ›  技术社区  ›  Geeth

如何使用jquery获取div中的第一个子id

  •  12
  • Geeth  · 技术社区  · 15 年前

    如何使用jquery获取div中的第一个子id。

    样例代码:

    <div id='id1'>
        <a id='a1' />   
        <a id='a2' /> 
        <a id='a3' /> 
    </div>
    

    我想得到身份证 a1 .

    我试过了 $('#id1 a:first-child').html() 来获取文本。如何获得身份证?

    6 回复  |  直到 6 年前
        1
  •  21
  •   Dustin Laine    15 年前
    $("#id1:first-child").attr("id")
    
        2
  •  14
  •   Amit Rathod    12 年前

    使用此项获取id1元素的第一个元素:

        $("#id1").children(":first");
    
        3
  •  14
  •   Heemanshu Bhalla    6 年前

    下面的答案将在id为“id1”的元素下选择第一个“a”元素(根据问题中的问题)

    $('#id1 a:first-child').attr('id')
    

    下面的代码将只选择id为“id1”的第一个div,因此它将选择div而不是div的子元素(但它不是根据回答中的问题进行的)

    $('#id1:first-child').attr('id')
    
        4
  •  3
  •   Amit Rathod    12 年前

    如果你想要第一个孩子

    $(element).first();
    

    如果您希望从元素中获得dom中的特定第一个元素,请使用下面的

    var spanElement = $(elementId).find(".redClass :first");
    $(spanElement).addClass("yourClassHere");
    

    试行: http://jsfiddle.net/vgGbc/2/

        5
  •  0
  •   N 1.1    15 年前
    $('#id1:first-child').attr('id')
    
        6
  •  0
  •   mircaea    10 年前

    为了使事情更清楚,这是为了在您已经可以访问的某个元素中找到任何元素而要做的事情,在这种情况下,就是id=e1的元素:

    <style>
      .c1{ border:2px solid red; padding: 12px; background: lightyellow }
      .c2{ border:2px solid green; padding: 12px; background: lightyellow }
      .c3{ border:2px solid blue; padding: 12px; background: lightyellow }
    </style>
    
    <div class='c1' id='e1'>
      <div class='c2' id='e2'>
        <div class='c3' id='e3'>text</div>
      </div>
    </div>
    

    下面这行是get's you div e2:

    var child2 = $('#e1').find(".c2");
    

    下面这两行代码都可以得到div e3:

    var child3   = $('#e1').find(".c3");
    var child3_1 = $('#e1').find(".c2 :first");
    

    要更改这些内容,必须使用以下对象:

    $(child2).css('background-color','white');
    $(child3).css('border','4px dotted pink');
    $(child3_1).css('color','#ef2323');
    

    我希望这是明确和有益的。

    推荐文章