2011-08-29 41 views
0

刪除一個div我有它的HTML看起來像一個形式:jQuery的 - 從形式

<div id="form_container"> 
     <h1><a>Untitled Form</a></h1> 
     <form action="save_form" method="post" id="newform" name="newform"> 
      <div class="form_description"> 
      <h2 class="editable">Form title. Click here to edit</h2> 
      <p class="editable">This is your form description. Click here to edit.</p> 
      </div> 
      <ul id="form_body"> 
      <li id="field1" class="world"> 
       <a href="#" onclick="return false;" class="hover"> 
       <label class="editable" for="field1">Text1</label> 
       <input type="text" name="field1" value=""></a> 
       <div class="element_actions"> 
        <img src="/images/ico_delete_16.png" alt="Delete." title="Delete" class="remove_element"> 
       </div> 
      </li> 
      </ul> 
     </form> 
     </div> 

我想克隆形式,並從中取出「element_actions」 DIV。我不想修改現有的表單,只是它的克隆版本。

我試過'remove()'和'detach'沒有成功。

下面是對的jsfiddle測試:http://jsfiddle.net/truthseeker/LYCkt/

感謝您的幫助。

+0

您可以按 「TidyUp」 按鈕。它正確縮進代碼,使其更易於閱讀。 ':)' –

+0

抱歉。 – truthSeekr

+0

沒問題':p' –

回答

1

試試這個

$("#form_body").clone().find('.element_actions').remove().end().html(); 

節省的jsfiddle演示前的狀態demo

+0

謝謝,這很完美。爲了除去class .editable,我會遵循相同的規則? – truthSeekr

+1

@truth如果您需要對克隆執行多個命令,我推薦使用多條語句而不是長鏈,如下所示:'var temp = $('#form_body')。clone(); 。temp.find(」。element_actions')除去(); temp.find('。editable')。remove();'等 –

0

嘗試

$("#form_body").clone().find('.element_actions').remove() 

或者

$("#form_body").clone().find('div .element_actions').remove() 

如果你需要它是在一個div。