请帮助,我建立一个论坛,我即时通讯使用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" );
有谁知道合适的方法?或解决方案? 感谢..
答案 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所示的内容。
根据您的情况和要求,有不同的方法可以做同样的事情。