如何在CKEditor 3.x中删除不必要的标签

Dim*_*mon 3 ckeditor

我使用以下代码......

var oEditorText = CKEDITOR.instances["_TEXTAREANAME_"].getData();
return {
   _TEXTAREANAME_ : oEditorText
};
Run Code Online (Sandbox Code Playgroud)

每次编辑一个相同的记录时都会添加一个新标签.

我怎么能纠正这个,

先感谢您!

cod*_*gle 8

您可以通过更改配置设置来限制CKEditor插入的标记.

我写了一个概述为什么在某些情况下插入标记,并解释了在这篇文章的答案中使用两个配置设置:

如何配置ckeditor不包含<p>块中的内容?

答案不仅仅是阻止a <p>.阻止被插入.

我解释的两个设置是:config.enterModeconfig.autoParagraph.

config.enterMode 确定内容是否被包装以及由哪个标签包装.

config.autoParagraph 确定内联元素(如"span")是否自动包装在块元素中.

有关详细信息,请参阅该帖子.


我指出了一些设置,但没有描述它们.我会在这里描述它们.

config.shiftEnterMode具有相同的选项和用法config.enterMode.

config.fillEmptyBlocks确定是否将非中断的space(&nbsp;)字符实体插入到空块元素中.除了将其设置为true或false之外,您还可以将函数设置为返回true或false.

config.forceEnterModeconfig.enterMode无论上下文如何,都会在有换行符时使用设置中指定的标签.因此,如果<div>在输入模式中分配标签并且您在<p>标签中,则换行符将导致<div>在其中插入标签<p>.

config.ignoreEmptyParagraph如果设置为true(默认值),则表示如果内容区域中没有空段落以外的内容,则编辑器应返回空值而不是空<p></p>标记.

正如戴蒙所说,有一个config.fullPage环境.它用于指示编辑器的内容是否代表完整的HTML文档:

<html><head></head><body></body></html>

通常就是这样的HTML代码块.

所有配置设置如下所述:http:
//docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html