Mob*_*y04 1 javascript string jquery
我想从一些 html 字符串中删除空元素。我知道我可以运行类似的东西:
$('p').each(function(index, item) {
if($.trim($(item).text()) === "") {
$(item).remove();
}
});
Run Code Online (Sandbox Code Playgroud)
问题是我想删除所有空节点 - 不仅仅是 p。此外,我希望脚本将 p 节点<p><span></span></p>
视为空,因为它仅包含空元素。你有一些类似的简单实现吗?
[编辑] 我忘了补充:我可以使用 jQuery,但我想遍历和编辑的 html 是一个字符串 - 而不是实际的文档。那么我该如何做这个操作呢?我尝试使用var html = $.parseHTML('<p><span></span></p>')
但每次循环后我仍然得到相同的字符串......
最近我正在寻找同样问题的解决方案。递归函数就是答案。
function removeEmptyTagsRecursively($el) {
if ($el.children().length) {
$el.children().each(function(i, val) {
removeEmptyTagsRecursively($(val));
});
$el.children(':empty').remove();
}
}
Run Code Online (Sandbox Code Playgroud)
在这里小提琴:https : //jsfiddle.net/635utakr/9/
归档时间: |
|
查看次数: |
1692 次 |
最近记录: |