[英]jQuery .html() removing html elements
我在過濾表后將變量設置為<tbody>
的全部內容,我希望能夠返回到<tbody>
的原始全部內容。 當前,當我嘗試更改回原始內容時,jQuery正在剝離<script>
<tr>
和<td>
元素。
JavScript
var contents= $("tbody").html();
//load of other functions
$("tbody").html(contents);
內容看起來像這樣:
<script>alert("Hello");</script>
<tr>
<td>A value</td>
<td>Another value</td>
</tr>
當我嘗試還原到此內容時,我得到:
A value
Another value
如下面的jsFiddle所示,您正在使用的技術應該可以工作:
運行小提琴時,請查看JavaScript控制台。 您會注意到html()返回的值是預期的。
要調試代碼,請使用瀏覽器的開發工具檢查實際的DOM。 在例行程序之前,期間和之后,肢體是什么樣的?
另外,您使用什么確切的代碼檢查恢復的肢體內容? 我假設您使用以下方法在調試器(或等效工具)中戳恢復的值:
$("tbody").html()
如果不是這種情況,請告訴我們。
您應該能夠使原始代碼正常工作。 但是,如果您願意,可以嘗試以下實現方式:
var contents$ = $("tbody").children().clone();
// load of other functions
$("tbody").empty().append( contents$ );
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.