我正在尝试更新一些初始化的CKEditor,但是它不起作用。
在CKEditor 4中,它是:
for(var instanceName in CKEDITOR.instances)
CKEDITOR.instances[instanceName].updateElement();
不适用于CKEditor 5。
答案 0 :(得分:1)
我的答案取决于ClassicEditor,但也可以与InlineEditor和BalloonEditor一起使用。
ClassicEditor.create()
函数返回一个Promise,它将由编辑器实例解析。不再包含保存已创建的编辑器的全局变量。参见https://stackoverflow.com/a/46819396/3388924。
如果您在<textarea>
元素(应在<form>
元素内)上初始化编辑器,则<textarea>
的值将在提交表单时自动更新。您可以看到source code。
当然,您可以手动更新元素。请参见ClassicEditor.updateElement()
方法。我还准备了一个在线演示:https://jsfiddle.net/pomek/k1wp093n/
请记住,将来版本中的editor.updateElement()
函数将重命名为editor.updateSourceElement()
。参见ckeditor/ckeditor5-core#129