javascript - 仅从 insideHTML 中删除文本

标签 javascript html

我动态生成了 HTML,例如:

const content = '<b>some <i>text</i><b>'

如何获取此内容并删除最后 2 个字母,以获得 <b>some <i>te</i><b> ?我通过 el.innerHTML 获取此内容。主要思想是,我想保持 html 的原样,并只裁剪文本。

最佳答案

在 HTML 上使用正则表达式是... problematic .

另一种方法是创建一个新元素,将其 innerHTML 设置为字符串。然后更新i元素的文本内容。

const content = '<b>some <i>text</i><b>';
const span = document.createElement('span');
span.innerHTML = content;
const i = span.querySelector('i');
i.textContent = i.textContent.substring(0, i.textContent.length - 2);
console.log(span.innerHTML);

关于javascript - 仅从 insideHTML 中删除文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57902727/

相关文章:

javascript - connect-flash 和 jade : unable to show flash messahe

javascript - 如何阻止内部div与外部div重叠?

javascript - 加载后获取 HTML 内容

html - 使用CSS的背景图像

php - 对来自 MySQL 的数据进行排序并将其插入到 HTML 表中

javascript - 寻找一个jQuery插件来绘制饼图

javascript - 使用 ReactJS、Superagent 和 Python (flask) 进行 POSTing

html - 向 'active' 和 'non-active' 图形类添加不同的不透明度

javascript - JS 新手 : My function does nothing

html - 使用 AngularJS 实现极其简单的 ng-show 动画