我在CKEditor 5上遇到问题,我在页面加载时加载CKEditor实例,但可能希望稍后通过jquery填充它。
这是我的初始代码:
if (makeCK) {
var allEditors = document.querySelectorAll('.ckeditor');
for (var i = 0; i < allEditors.length; ++i) {
ClassicEditor.create(allEditors[i]);
}
}
这是我在jquery成功中尝试过的两种方法:
ClassicEditor
.create(document.querySelector('#ArtistIntro'), {
removePlugins: ['dragdrop']
})
.then(function (editor) {
editor.setData(obj.artist.bio.summary);
})
.catch(function (err) {
console.error(err);
});
ClassicEditor
.create(document.querySelector('#ArtistBio'), {
removePlugins: ['dragdrop']
})
.then(function (editor) {
editor.setData(obj.artist.bio.content);
})
.catch(function (err) {
console.error(err);
});
//CKEDITOR.instances['ArtistIntro'].set.data(obj.artist.bio.summary);
//CKEDITOR.instances['ArtistBio'].set.data(obj.artist.bio.content);
最上面的一个在某种意义上说是用它的值填充了CKEditor文本区域,但是它创建了一个新的CKEditor,因此在屏幕上有两个,一个填充,一个空白。
注释掉的两个是我尝试的另一种方法。这引发了一个错误,指出未找到CKEditor。这看起来似乎很明显,并且填充文本区域应该不难。我在做什么错了?
谢谢