Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript/jQuery在CkEditor5中动态创建html代码段?_Jquery_Plugins_Ckeditor5 - Fatal编程技术网

如何使用JavaScript/jQuery在CkEditor5中动态创建html代码段?

如何使用JavaScript/jQuery在CkEditor5中动态创建html代码段?,jquery,plugins,ckeditor5,Jquery,Plugins,Ckeditor5,我正在将当前正在使用Redactor和jQuery的自定义应用程序转换为CkEditor,v5。它通常可以工作,但我们有一个功能,可以生成一些HTML,然后将其插入编辑器中。对于旧的编辑器,这很好,但是对于CkEditor,我认为我需要在新的HTML片段中插入HTML。我可以用class=raw html embed将html包装在一个div中,这是代码段插件通常生成的内容,但CkEditor不将其识别为新代码段,它只是作为文本插入 是否有API调用或其他过程允许be触发新HTML代码段的创建?

我正在将当前正在使用Redactor和jQuery的自定义应用程序转换为CkEditor,v5。它通常可以工作,但我们有一个功能,可以生成一些HTML,然后将其插入编辑器中。对于旧的编辑器,这很好,但是对于CkEditor,我认为我需要在新的HTML片段中插入HTML。我可以用class=raw html embed将html包装在一个div中,这是代码段插件通常生成的内容,但CkEditor不将其识别为新代码段,它只是作为文本插入


是否有API调用或其他过程允许be触发新HTML代码段的创建?

我最终查看了剪贴板源代码,并找到了它。只需将字符串转换为视图元素,然后转换为模型片段,然后插入。文档中的一个简单示例会有所帮助!如果这不是最好的方法,请留下评论

ckeditor.model.change(writer => {
    const clipboard = ckeditor.plugins.get('Clipboard');
    const view = clipboard._htmlDataProcessor.toView(newText);
    const modelFragment = ckeditor.data.toModel(view, '$clipboardHolder');
    if (modelFragment.childCount === 0) {
        return;
    }
    ckeditor.model.insertContent(modelFragment);
});