繁体   English   中英

从字符串中删除 html 属性?

[英]Removing html attribute from String?

我有一个 html 字符串,如下所示:

<div id="demo_..." class="menu">

html 代码以字符串形式提供。 现在我想删除所有以 demo_ 开头的 id 属性。 结果应该是这样的:

<div class="menu">

我知道它应该与正则表达式一起使用。 但我对特殊字符有点挣扎。 正则表达式应该是什么样子,以便所有具有这种格式的字符串都可以替换为空字符串?

您可以使用ZE83AED3DDF4667DEC0DAAAACB2BB3BE0BZ 属性选择器

[att^=val]表示具有 att 属性的元素,其值以前缀“val”开头。 如果 "val" 是空字符串,则选择器不代表任何内容。

[att$=val]表示具有 att 属性的元素,其值以后缀“val”结尾。 如果 "val" 是空字符串,则选择器不代表任何内容。

[att*=val]表示具有 att 属性的元素,其值包含至少一个 ZE83AED3DDF4667DEC0DAAAACB2BB3BE0BZ "val" 的实例。 如果 "val" 是空字符串,则选择器不代表任何内容。

对于您的情况,您可以使用

document.querySelectorAll('[id^="demo_"]')

或者

document.querySelectorAll('[id*="demo_"]')

结果将是一个具有id属性的 HTMLElement 数组,其值以前缀demo_开头,如果使用*而不是^则包含demo_ 从那里您可以使用removeAttribute()方法删除每个 HTMLElement id att。 这里阅读更多内容。

document.querySelectorAll('[id^="demo_"]')
 .forEach(element => element.removeAttribute('id'));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM