我使用json检索了一个textarea的主体,但由于之前设置了一些样式,文本似乎带有html标签。
如果没有这些html标签可见,我怎么能在新的textarea上显示这些文本行?我不想完全摆脱它们,因为我仍然希望保留样式以供将来使用。
答案 0 :(得分:2)
您需要从textarea中转义传入字符串中的html标记。通过像/<(.|\n)*?>/
这样的正则表达式,您可以找到打开的html标记,使用/<(\/.|\n)*?>/
可以找到结束标记。
以下是我的例子:
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
</head>
<body>
<textarea id="input">
<p>This is html</p>
</textarea>
<textarea id="output">
</textarea>
var input = document.getElementById('input'),
output = document.getElementById('output');
output.value = input.value.replace(/<(.|\n)*?>/, '').replace(/<\/(.|\n)*?>/, '');
住在:JSBin
您可能希望使用此正则表达式检测/>
之类的结束标记:/\/(.|\n)*?>/
答案 1 :(得分:0)
textarea{width:100%;min-height:75px}
<textarea id="input">
<p>This is html</p>
<p>This is html</p>
<p>This is html</p>
</textarea>
<button onClick="removeTags()">Remove</button>
<textarea id="output"></textarea>
<script>
function removeTags(){
var input = document.getElementById('input');
var output = document.getElementById('output');
output.value = input.value.replace(/(<([^>]+)>)/ig,"");
}
removeTags();
</script>