小程序渲染富文本里面的内容怎么把所有标签属性去除
时间: 2023-10-12 22:16:48 浏览: 107
可以使用第三方库如`wxParse`或者手动编写代码来实现去除标签属性。以下是手动编写代码的示例:
```javascript
function removeTagAttributes(html) {
// 匹配所有标签属性
const attrReg = /(\w+)\s*=\s*(?:"[^"]*"|'[^']*'|\w+)\s*/g;
// 匹配所有标签
const tagReg = /<[^>]+>/g;
// 替换标签属性为空字符串
const cleanHtml = html.replace(tagReg, (tag) => {
return tag.replace(attrReg, '');
});
return cleanHtml;
}
```
使用示例:
```javascript
const html = '<p class="test" style="color: red;">Hello, World!</p>';
const cleanHtml = removeTagAttributes(html);
console.log(cleanHtml); // <p>Hello, World!</p>
```
在小程序中,可以在 `setData` 方法中使用该函数,将富文本内容中的所有标签属性去除:
```javascript
const html = '<p class="test" style="color: red;">Hello, World!</p>';
const cleanHtml = removeTagAttributes(html);
this.setData({ richText: cleanHtml });
```
阅读全文