如何删除子项并获取父项

use*_*110 0 html javascript jquery

我对jQuery不是很好,我需要你的帮助.首先,让我解释一下情况.我有一个像这样的HTML表:

<table id="table">
<tr><td><img class="image" />test</td><td></td></tr>
<tr><td><img class="image" />test</td><td></td></tr>
</table>
Run Code Online (Sandbox Code Playgroud)

我需要做的是获取表的全部内容:$("#table").html()但没有img标签.(但我不想在原始内容中删除它们,仅在"复制"内容中删除它们)

我试过这样的事情: $('#table').clone().find('.image').remove().parent().parent().html()

但它是未定义的(我想当元素被删除,我无法访问它并获得父级).你会怎么做?

谢谢

编辑:为了更好地解释它,我需要的结果是:

<table id="table">
<tr><td>test</td><td></td></tr>
<tr><td>test</td><td></td></tr>
</table>
Run Code Online (Sandbox Code Playgroud)

Has*_*ast 6

$('#report').clone().find('.plusImage').remove().html() 不会返回表格的内容.

// First clone table and save it to a new variable
var clonedTable = $('#table').clone();

// remove all img tags
clonedTable.find('img').remove();

// test it
console.log(clonedTable.html());
Run Code Online (Sandbox Code Playgroud)

您还可以使用正则表达式将其从字符串中删除而不克隆DOM:

var contentWithoutImg = $('#table').html().replace(/<img[^>]+\>/ig, '');
console.log(contentWithoutImg);
Run Code Online (Sandbox Code Playgroud)