如何获取并返回包含其ID的Div

时间:2012-07-18 01:39:15

标签: javascript jquery

看起来像一个超级简单的问题,但我找不到答案。

我正在抓住DIV“用户条目”

var $user = $('#user-entry');

HTML:

<div id="user-entry">

<table style="border: none; width: 100%">
            <thead>
                <tr>
                    <th colspan="2" style="text-align: left">
                        @Html.Label("Hello World")
                    </th>
                </tr>
            </thead>
    </table>
</div>

现在我想将其附加到另一个div <div id="role"></div>。 这就是JQuery append(),appendTo(),prepend(),prependTo()函数的用途。太好了!

我的问题是,在使用DIV时,没有实际的DIV名称。 如果示例运行:

            var $user= $('#user-entry');
            $($user.html()).appendTo('#role');

然后我的表被正确地附加到“角色”,但是用户DIV本身没有显示。

而不是:

<div id="role">
   <div id="user-entry">
      <table style="border: none; width: 100%">
     </table>
   </div>
</div>

我最终得到了:

<div id="role">
      <table style="border: none; width: 100%">
     </table>
</div>

如何捕获并返回名称包含的div?

3 个答案:

答案 0 :(得分:3)

因为使用html方法只是附加div的内容,请尝试:

$('#user-entry').clone().appendTo('#role')

DEMO

答案 1 :(得分:3)

这是正确的方法

$('#user-entry').appendTo('#role');

$($user.html()).appendTo('#role');<div id="user-entry">中创建元素的副本,并将其附加到<div id="role">

答案 2 :(得分:1)

尝试:

$('#user-entry').appendTo('#role');

或者如果您想要克隆它,请尝试:

$('#user-entry').clone().appendTo('#role')