0

我们需要用 html 标记和没有(对于邮件)组成文本所以我有 ckeditor 用 html 标记组成文本,但是当我用脚本删除标记时,所有断线都消失了,因为脚本会去除<p>标签。我只剩下一长串文本而不是下降布局。有人知道我如何保持断线吗?

function strip(){
        var html = CKEDITOR.instances.Maintext.getData();
        var text = $(html).text(); 
        document.getElementById('nohtmltext').value = text;
    }
4

3 回答 3

1

我从给出的答案中找到了一个解决方案。

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;
        }

我知道这不是我写过的最漂亮的代码,但它正是我想要的。谢谢您的帮助

于 2013-03-22T14:36:36.257 回答
0

一种解决方案是用“\n”替换所有“p-tags”。

html.replace('<p>','').replace('</p>','\n\n').text(); // not tested
于 2013-03-20T12:18:18.660 回答
0

错误的:

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;
}
于 2013-03-20T14:01:46.087 回答