百度編輯器ueditor 異步加載時,初始化沒辦法賦值bug解決方法
因項目中使用了百度編輯器——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/