Re: [討論] Ajax載入頁面裡的tinymce

看板Ajax作者 (夏天到了,冷不起來了說)時間12年前 (2013/02/07 09:44), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
自問自答: 網路上有人說要在動態產生textarea(不論是用js產生或ajax load)前 先執行這一個來把已經產生的Coltrol(估且用這說法論之)移除 tinyMCE.execCommand('mceRemoveControl', true,'textarea_id'); 然後在產生textarea DOM之後再執行此指令,將其產生tinyMCE Control tinyMCE.execCommand("mceAddControl",false,'textarea_id'); (我原本是由ajax載入一串包含js碼的html,在html裡的js加上上列的指令 不過這樣無法執行) 由於考量到textarea如果一多就要執行一堆 我用了以下的方法 // 初始 var tinyMCE_instances = new Object(); // 動態執行的function function ajax_load(){ $.each(tinyMCE_instances,function( key, value ) { tinyMCE.execCommand('mceRemoveControl', true,value); }); $.post("ajax.php",function(data){ $("#content").html(data); $("#content textarea.tinymce").each(function(){ if (!tinyMCE_instances[this.id]) tinyMCE_instances[this.id] = this.id; tinyMCE.execCommand("mceAddControl",false, this.id); }); }); } 實在是有點麻煩到 =.= ※ 引述《JYHuang (夏天到了,冷不起來了說)》之銘言: : 原本的做法是頁面內容固定 : 由ajax取得json後一一填入各個input和textarea : 所以用jquery.tinymce去把textarea DOM轉換成編輯器沒有問題 : 因為DOM一直存在著,載入頁面時就被tinymce初始化了。 : 後來改成整個區塊的HTML是由ajax載入 : 第一次呼叫時還可以work : 再一次載入時,DOM消失又被載入 : 此時tinymce就發生錯誤 : 無法把textarea DOM初始化成編輯器了。 : 不知道有沒有人也是用此作法然後解決過的? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.74.246.137
文章代碼(AID): #1H4mS70u (Ajax)
討論串 (同標題文章)
文章代碼(AID): #1H4mS70u (Ajax)