[英]Removing html tags but keep breaklines
我们需要用html标记组成一个文本,并且不带(用于邮件),所以我已经让ckeditor用html标记组成文本,但是当我删除带有脚本的标记时,所有的换行符都消失了,因为脚本会删除<p>
标签。 我只剩下一长串文本,而不是下降的布局。 任何人都知道我如何保持突破线吗?
function strip(){
var html = CKEDITOR.instances.Maintext.getData();
var text = $(html).text();
document.getElementById('nohtmltext').value = text;
}
我从给出的答案中找到了一些帮助的解决方案。
function strip(){
var html = CKEDITOR.instances.Maintext.getData();
html = html.replace(/<p>/g,'');
html = html.replace(/<\/p>/g,'\n\n');
var tempDiv = document.createElement('div');
tempDiv.innerHTML = html;
var text = $(tempDiv).text();
document.getElementById('nohtmltext').value = text;
}
我知道这不是我编写过的最漂亮的代码,但是它确实可以实现我想要的功能。 谢谢您的帮助
一种解决方案是用“ \\ n”替换所有“ p-tag”。
html.replace('<p>','').replace('</p>','\n\n').text(); // not tested
错误:
function strip(){
var html = CKEDITOR.instances.Maintext.getData();
var text = $(html).text();
document.getElementById('nohtmltext').value = text;
}
好:
function strip(){
var html = CKEDITOR.instances.Maintext.getData();
document.getElementById('nohtmltext').innerHTML = html;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.