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)
$('#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)