如何将html传递给CKEditor textarea

时间:2016-12-05 22:35:19

标签: javascript jquery html ckeditor

请帮助,我建立一个论坛,我即时通讯使用CKEditor作为我的所见即所得。我想实现回复系统,以便当用户回复时,有一些预定义的标记,以便其他人知道它的回复。这意味着我必须将标记传递给textarea,然后用户可以放置他所拥有的任何回复并保存。

现在我无法传递预定义的html来设置回复。我尝试了很多东西,包括setdata(),但它似乎返回纯文本。

这是我的代码

CKEDITOR.instances['editor1'].setData( "<div style = font-size:11px; background: #e3e3e3;padding:5px;><?php echo $this->session->userdata('username');?> <i class='fa fa-reply' aria-hidden='true'></i> <?php echo $post->username; ?></b></div" );

有谁知道合适的方法?或解决方案? 感谢..

1 个答案:

答案 0 :(得分:0)

一个简单的解决方法是捕获CKEditor的实例并实现 insertHtml 函数

如果您尝试在插件中使用它:

var editor;
// In your plugin.js
CKEDITOR.plugins.add('YOUR-PLUGIN-NAME', {
    init: function(edtr){
        editor = edtr;
        // YOUR OTHER CODE
    }
});

如果您正在使用CKEditors config.js做某事:

var editor;
// In your config.js
CKEDITOR.on("instanceReady", function (event) {
    editor = event.editor;
    // YOUR OTHER CODE 
});

之后,您所做的只是:

editor.insertHtml("<div>Your-Custom-HTML</div>");

或者您可以直接执行here所示的内容。

根据您的情况和要求,有不同的方法可以做同样的事情。