2013-04-15 68 views
0

我想一個H6標籤內回聲內容的基礎上:jQuery的克隆特定的標記

$('input').keyup(function() { 
if ($(this).val() > '0') 
    $('#testh6').append($(this).parents("tr").clone("h6")); 
}); 

的問題是,它需要整個TR不僅包含H6。我如何修改這個,所以我只是克隆h6?

+0

雖然下面的答案可能是正確的,但它有助於您嘗試操作的html的示例... – excentris

+0

第二個jquery代碼示例在這裏http://api.jquery.com/clone/' $('。hello')。clone()。appendTo('。goodbye');' – Joonas

回答

1

這應做到:

$('input').keyup(function() { 
if ($(this).val() > '0') 
    $('#testh6').append($(this).parents("tr").find("h6").clone()); 
}); 

編輯:答案評論:

再次刪除它時,VAL == 0

$('input').keyup(function() { 
    if ($(this).val() > '0') { 
     $('#testh6 h6').remove(); // Make sure there's no previous tag left. 
     $('#testh6').append($(this).parents("tr").find("h6").clone()); 
    } 
    elseif ($(this).val() == '0'){ 
     $('#testh6 h6').remove(); 
    } 
}); 

當然,這將刪除所有h6標籤在該div中,如果這不是你想要的,你需要保留一個參考或以某種方式識別它,以便稍後恢復它。

+0

太棒了 - 謝謝!如果輸入回到0,你知道如何從div中刪除它嗎? – Palemo

+0

如果你想完全從DOM中刪除它,使用'.remove()' – excentris

+0

@Kenneth - 修改後的評論似乎不適合我?此外,我的問題是,如果他們在輸入中多次更改答案,它每次都會克隆h6標記 - 基本上只要輸入不是0,它就應該只顯示相應的h6內容一次。 – Palemo