删除 <p> 标签,其中只有 <br> javascript

网络开发丹诺

我正在尝试使用 javascript 删除 HTML 元素 <p><br></p>

const blog = document.getElementById('blog');
const postNode = document.createElement('div');
postNode.innerHTML = postNode.innerHTML.replace('<p><br></p>', '');
blog.appendChild(postNode);

但是,replace似乎并没有摆脱innerHTML. 认为这是因为当前的输出是

<h2>This is a heading two</h2><p>This is a paragraph</p><p><br></p><p>This is a paragraph with a <strong>bold</strong> an <em>italic</em> and an <u>underscored</u> text</p><p><br></p>

问题<p><br></p>HTML 连接到其他元素,因此它本身不是字符串或子字符串。

是否有一些正则表达式魔法可以帮助我?

某些表演

遍历<p>标签,并filter根据标签是否只有一个孩子,并且该孩子是<br>. 然后,通过该测试的.remove()每个<p>s:

[...postNode.querySelectorAll('p')]
  .filter(p => p.children.length === 1 && p.children[0].tagName === 'BR')
  .forEach(p => p.remove());
console.log(postNode.innerHTML);
<div id="postNode">
  <h2>This is a heading two</h2>
  <p>This is a paragraph</p>
  <p><br></p>
  <p>This is a paragraph with a <strong>bold</strong> an <em>italic</em> and an <u>underscored</u> text</p>
  <p><br></p>
</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

删除PHP中的多余标签'<p> <br> </ p>'?

来自分类Dev

通过JavaScript或jQuery删除其中带有不间断空格的P标签

来自分类Dev

jQuery删除BR标签

来自分类Dev

PHP删除BR标签

来自分类Dev

如何从Textarea删除<br/>标签?

来自分类Dev

Javascript-删除按钮后<br>

来自分类Dev

Android:替换<p>和<br />标签

来自分类Dev

替换beautifulsoup中的<p>和<br>标签

来自分类Dev

Android:替换<p>和<br />标签

来自分类Dev

PHP:删除过多的<br>标签

来自分类Dev

调整窗口大小时删除<br />标签

来自分类Dev

Python bs4删除br标签

来自分类Dev

Python bs4删除br标签

来自分类Dev

调整窗口大小时删除<br />标签

来自分类Dev

使用JavaScript删除P:confirmDialog?

来自分类Dev

用javascript替换多个<br>标签

来自分类Dev

jQuery / Regex:删除所有p标签

来自分类Dev

将标签p替换为Blockquote中的br

来自分类Dev

在tinyMCE编辑器中需要同时具有p标签和br标签

来自分类Dev

从字符串的开头和结尾删除BR标签

来自分类Dev

如何解析HTML网页并删除<br>标签?

来自分类Dev

从字符串的开头和结尾删除BR标签

来自分类Dev

如何解析HTML网页并删除<br>标签?

来自分类Dev

从 PHP 中的 XML 字符串中删除 <br /> 标签

来自分类Dev

删除HTML脚本标签是否会对其中包含的JavaScript有任何影响?

来自分类Dev

如何从WordPress删除p标签

来自分类Dev

删除&nbsp; 在p标签之间

来自分类Dev

如何从WordPress删除p标签

来自分类Dev

删除未使用的p标签