获得div中的第一个div

时间:2013-10-22 20:30:44

标签: jquery

我将第一个div作为变量,并尝试更改内部div的ID。

我得到了这样的uiID

uiID = $(ui.draggable).attr("id");

$(uiID + "div:first").attr('id','dropped1');

<div id="a">
    <div id ="b">
    </div>
</div>

由于某种原因,这不起作用。我已尝试过first()以及

$(uiID ).first().attr('id','dropped1');

5 个答案:

答案 0 :(得分:2)

你忘了这个空间:

$(uiID + " div:first").attr('id','dropped1'); 

这应该没问题。

Oups也许你也忘了#:

uiID = "#" + $(ui.draggable).attr("id");

jsfiddle:http://jsfiddle.net/mZZjc/

答案 1 :(得分:1)

为什么不简单地使用:

$('div div:first-child');

<强>参考:

http://api.jquery.com/first-child-selector/

答案 2 :(得分:0)

你可以使用

uiId.find('div:nth-child(1)').attr('id','dropped1');

答案 3 :(得分:0)

您错过了ID之前的#以及选择器中元素之间的空格。它应该是:

$("#" + uiID + " div:first").attr('id','dropped1');

或:

$("#" + uiID).find("div:first").attr('id','dropped1');

答案 4 :(得分:0)

var uiID = $(ui.draggable).attr("id");

$("#" + uiID + "> div:first-child").attr('id','dropped1');

我认为这是唯一正确的解决方案。

您需要ID的哈希值,然后您需要直接后代>)以及第一个孩子的哈希值。