textarea 如果遇到了html 转义过的字符串,如何把他反转义后,显示在编辑框内
时间: 2024-05-04 22:21:43 浏览: 114
可以使用 JavaScript 中的 `innerHTML` 属性对文本进行反转义。具体来说,可以通过以下步骤实现:
1. 获取 textarea 元素的值,例如:
```javascript
const textarea = document.querySelector('textarea');
const encodedText = textarea.value;
```
2. 创建一个 div 元素,并将 textarea 元素的值作为 div 元素的 innerHTML 属性值,例如:
```javascript
const div = document.createElement('div');
div.innerHTML = encodedText;
```
3. 获取 div 元素的文本内容,这时候文本已经被反转义了,例如:
```javascript
const decodedText = div.textContent;
```
4. 将反转义后的文本设置回 textarea 元素中,例如:
```javascript
textarea.value = decodedText;
```
完整的代码示例:
```html
<textarea id="myTextarea"><p>Hello, &#9737;</p></textarea>
<script>
const textarea = document.querySelector('#myTextarea');
const encodedText = textarea.value;
const div = document.createElement('div');
div.innerHTML = encodedText;
const decodedText = div.textContent;
textarea.value = decodedText;
</script>
```
这段代码会将 textarea 中的字符串 `"<p>Hello, &#9737;</p>"` 反转义为 `<p>Hello, ☉</p>` 并显示在编辑框内。
阅读全文