如何使用jQuery将html
标记替换为新标记?
我有很多table
个标签,我想替换包含类的特定表。它的所有'子节点也应该被替换。
<table class='replace_this'>
<tr>
<td>
All table, tr, and td tag are replaced with div tag
</td>
</tr>
</table>
应改为:
<div class='replace_this'>
<div>
<div>
All table, tr, and td tag are replaced with div tag
</div>
</div>
</div>
答案 0 :(得分:7)
你必须从内到外开始:
$('.replace_this td').each(function() {
$(this).replaceWith(function() {
return $('<div>' + this.innerHTML + '</div>')
})
});
$('.replace_this tr').each(function() {
$(this).replaceWith(function() {
return $('<div>' + this.innerHTML + '</div>')
})
});
$('table.replace_this ').each(function() {
$(this).replaceWith(function() {
return $('<div class="replace_this">' + this.innerHTML + '</div>')
})
});
答案 1 :(得分:0)
我有这样的事情:
$.each(['td', 'tr', 'table'], function(index, value){
$(value).replaceWith(function() {
return '<div>' + $(this).html() + '</div>';
});
});