我已经使用Wordpress的wp_editor
功能加载了tinyMCE编辑器。
现在,我要在初始化该编辑器后为其设置值。我试图这样做:
$(function() {
tinymce.get(...).setContent(...);
});
但是由于未初始化编辑器,因此抛出错误Cannot read property 'setContent' of undefined
。为了确认这一点,我使用console.log( tinymce.editors.length )
语句登录了控制台,并打印了0
,但是稍后在加载完成后使用浏览器控制台检查变量tinymce.editors
时,编辑器就在那儿,我可以对其进行操作。
因此,我的结论是等待所有tinyMCE编辑器初始化,然后运行以上代码以更改编辑器的值。请注意,我需要使用JS而不是从后端(php)设置值。
[请告诉我是否有办法实现这一目标。并问我是否需要更多信息,或者我不清楚。
提前感谢:)
您可以等待特定编辑器管理器的添加,然后绑定init
事件处理程序以设置编辑器的内容,如下所示:
tinymce.on( 'addeditor', e => {
if ( e.editor.id === <your_editor_id> ) {
e.editor.on( 'init', event => {
event.target.setContent( <your_editor_content> );
});
}
}, true );
您可以在TinyMCE中使用编辑器配置中的setup选项对其进行初始化。例如:
setup: function (editor) {
editor.on('init', function (e) {
editor.setContent('<p>Hello world!</p>');
});
}
[在调用wp_editor()时尝试传递这些编辑器设置。
资源: