如何将数据加载到ckeditor onload中

NaN*_*NaN 4 javascript jquery ckeditor

是否可以在不使用JQuery的情况下将数据加载到ckeditor中?如果可能的话,我想为此使用内联脚本标记.我能找到的所有例子都与Jquery有关,在我的情况下这不是最优的.

到目前为止,我在CKs网站上找到的例子是:

CKEDITOR.instances.editor1.setData( '<p>Some other editor data.</p>', function()
    {
        this.checkDirty();  // true
    });
Run Code Online (Sandbox Code Playgroud)

我试图使用内联脚本标记,但它崩溃了编辑器.如果我在JQuery中使用它,它将按预期工作.

Pat*_*nes 13

以下是使用CKEDITOR API而不使用jQuery的示例.请观察调用replace函数,该函数使用textarea内容初始化CKEDITOR的"editor1"实例.我认为这是填充内容onload的最简单方法,但如果这还不够,你可以看到我已经使用你问题中的代码用"其他一些编辑器数据"来填充CKEDITOR.

HTML:

<textarea id="editor1">
    Hello, world!
</textarea>?
Run Code Online (Sandbox Code Playgroud)

使用Javascript:

CKEDITOR.replace( 'editor1', {
    toolbar: 'Basic',
    uiColor: '#9AB8F3'
});
CKEDITOR.instances.editor1.setData( '<p>Some other editor data.</p>', function()
{
    this.checkDirty();  // true
});
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/cDzqp/


mik*_*s87 5

我知道这个问题很旧,但是我已经弄清楚了解决方案,而且我认为这更干净,因此我在这里加价2美分,以供将来可能遇到相同问题的任何人使用。

CKEditor使用原来的旧文本区域中的内容自动设置新文本区域的内容。换句话说,只需更改textarea的内容,然后再调用replace命令即可。这将是代码:

document.getElementById("editor1").value = "<p>Some other editor data.</p>";
CKEDITOR.replace("editor1");
Run Code Online (Sandbox Code Playgroud)

完成:)