我正在创建一个CMS,用户可以使用tinyMCE编辑存储在服务器上的html页面。通过将源文本放入文本区域,将源文本加载到编辑器中我的C#代码隐藏文件。当我在这里放置一个断点时,我可以看到源代码html没有被C#代码改变。当文本出现在编辑器中时,虽然它会自动将<p>
标记与它们之间的不间断空格添加到文档顶部,每次保存时创建越来越大的间距,即使我已设置force_p_newlines
和force_br_newlines
为假。在保存文档之前,通常无法在编辑器中看到此间距(仅通过查看工具 - >源代码下拉列表中的源)。什么可能导致这个问题的想法? 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>
和 
问题相关,则可以重新粘贴。
答案 0 :(得分:2)
通过添加以下行forced_root_block:""