百度编辑器ueditor 异步加载时,初始化没办法赋值bug解决方法

时间:2021-04-10 11:11:28

百度编辑器ueditor 异步加载时,初始化没办法赋值bug解决方法

金刚
前端
ueditor
初始化

因项目中使用了百度编辑器——ueditor。整体来说性能还不错。

发现问题

我在做一个编辑页面时,因我编辑页面数据是通过ajax异步请求过来的。
我发现异步请求过来数据后,赋值给ueditor时一直提示inerhtml错误。

排除异常情况

我自己又做了一个页面,直接赋值给ueditor,发现是可以的。
排除ueditor问题。

思考

我猜想是我异步请求数据造成ueditor没有初始化完成就给ueditor赋值,所以才会出现inerhtml错误的情况。

解决问题

仔细查看百度ueditor的官方API文档,发现一个事件 ready
具体可以参考链接 http://ueditor.baidu.com/doc/#UE.Editor:ready

 editor.addListener( 'ready', function( editor ) {
editor.execCommand( 'focus' ); //编辑器家在完成后,让编辑器拿到焦点
} );

所以我把我代码改为:

                    var ue = UE.getEditor('GoodDescription');

                    //备注 (json.Body.GoodDescription 为异步请求过来的数据)
ue.addListener('ready', function (editor) {
ue.setContent(json.Body.GoodDescription);
});

本文为自己原创,转载请标记来源,谢谢。
作者:=金刚=
博客地址:http://www.cnblogs.com/woaic/