2012-07-18 36 views
1

看起來像一個超級簡單的問題,但我無法找到答案。如何抓取並返回包含其ID的012 Div

我抓住一個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包括在內?

+0

這是不是導致多個元素具有相同的ID? – 2012-07-18 01:41:44

+0

什麼是不工作的實際代碼行? – jfriend00 2012-07-18 01:42:30

+0

我會刪除$ user.remove(),它正確顯示它必須在哪裏 – Shenaniganz 2012-07-18 01:42:56

回答

3

這是做

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

$($user.html()).appendTo('#role');的正確方法創建<div id="user-entry">中的元素的副本並將它們附加到<div id="role">

3

,因爲通過使用html方法,你只追加div的內容,試試這個:

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

DEMO

1

嘗試:

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

或者,如果你想克隆它嘗試:

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