【发布时间】:2010-03-08 08:35:53
【问题描述】:
如何使用 JQuery 获取 div 中的第一个子 ID。
示例代码:
<div id='id1'>
<a id='a1' />
<a id='a2' />
<a id='a3' />
</div>
我想获取 id a1。
我已经尝试$('#id1 a:first-child').html() 来获取文本。如何获取id?
【问题讨论】:
如何使用 JQuery 获取 div 中的第一个子 ID。
示例代码:
<div id='id1'>
<a id='a1' />
<a id='a2' />
<a id='a3' />
</div>
我想获取 id a1。
我已经尝试$('#id1 a:first-child').html() 来获取文本。如何获取id?
【问题讨论】:
$("#id1:first-child").attr("id")
【讨论】:
.attr('id') 将获得 id
使用它来获取 id1 元素的第一个元素:
$("#id1").children(":first");
【讨论】:
下面的答案将选择 ID 为“id1”的元素下的第一个“a”元素(根据问题中的提问)
$('#id1 a:first-child').attr('id')
下面的代码将只选择 ID 为“id1”的第一个 div,因此它将选择该 div 而不是 div 的子元素(但它不是按照问题的回答)
$('#id1:first-child').attr('id')
【讨论】:
如果你想要第一个孩子,你需要
$(element).first();
如果你想从你的元素中获得特定的第一个元素,那么在下面使用
var spanElement = $(elementId).find(".redClass :first");
$(spanElement).addClass("yourClassHere");
【讨论】:
$('#id1:first-child').attr('id')
【讨论】:
为了让事情变得非常清楚,这是为了找到您已经可以访问的某个元素中的任何元素,在本例中是 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>
以下行得到你的 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');
我希望这很清楚并且有帮助。
【讨论】:
$("#form .form-group").first();
可能对某人有帮助。
【讨论】: