tinyMCE自动添加p标签和nbsp

本文关键字:标签 nbsp 添加 tinyMCE | 更新日期: 2023-09-27 18:16:09

我正在创建一个CMS,用户可以使用tinyMCE编辑存储在服务器上的html页面。通过将源文本放入文本区域,源文本被加载到编辑器的c#代码隐藏文件中。当我在这里放置一个断点时,我可以看到源html没有被c#代码改变。当文本出现在编辑器中,虽然它会自动添加<p>标记与它们之间的非分隔空间到文档的顶部,每次保存时创建越来越大的间距,即使我已将force_p_newlinesforce_br_newlines设置为false。在保存文档之前,这个间距通常无法在编辑器中看到(只能通过从Tools-> source Code下拉菜单中查看源代码)。你知道是什么导致了这个问题吗?tinyMCE的代码如下:

tinymce.init({
    selector: 'textarea',
    height: 600,
    width: 1000,
    force_br_newlines: false,
    force_p_newlines: false,
    skin: 'lightgray',
    plugins: [
     "paste advlist link image lists preview hr anchor pagebreak",
     "searchreplace visualchars code fullscreen insertdatetime",
     "save table contextmenu directionality emoticons paste textcolor"
    ],
    toolbar: "save | insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link | print preview fullpage | forecolor backcolor",
    save_enablewhendirty: true,
    save_onsavecallback: function(){
        var contents = tinyMCE.activeEditor.getContent();
        //puts contents into HiddenField
        $("[id$='editorContent']").val(contents);
        //Clicks hidden button to trigger event server-side
        $("[id$='testBtn']").click();
    }
});

我的tinyMCE是4.0.17版本。如果有必要,我也可以附加一个链接到我正在使用的一个html页面,但由于它们是从MS Word保存到html的,它们充满了不相关的文档属性,而且很大程度上难以理解。

编辑:我解决了Chrome中的问题,其中html页面的标题被添加到<p>标签之间的编辑器内容中,使用一个样式表和一个存储在所有页面的文本文件中的头部,并从它们中删除标题和许多其他MSO工件。因此,我已经删除了与此问题相关的所有c#源代码,但如果它可能与<p>&nbsp问题相关,可以将其粘贴回来。

tinyMCE自动添加p标签和nbsp

添加forced_root_block:""