7

だから私はこの窮地に陥っています。

<SCRIPT src="../js/tiny_mce/tiny_mce.js"></script>
<SCRIPT type="text/javascript">
   tinyMCE.init({
        mode : "textareas",
        theme : "simple"
   });
</SCRIPT>
<SCRIPT src="../js/admin.js"></script>

上記は私のPHPページで呼び出されます。

それから私は電話しています

var request = $.ajax(
{
   url:"getEvents.php",
   type:"POST",
   data:{'method':'showevents'},
   dataType:"html"
   }).done(function(msg){
        $('#eventlistbody').html(msg);
   }); 

   setTimeout(
        function(){
            $(".mceSimple").each(function(){
              tinyMCE.execCommand("mceAddControl",false, this.id);
           })
   },2000); 

これにより、一連のテキストエリアが読み込まれます..... tinyMCEは、最初に返されたときにすべてのテキストエリアに読み込まれます..リロードをクリックすると、上記が再度実行され、tinyMCEが添付されていないテキストエリアが返されます彼らへ。初めて機能し、その後は機能しない理由がわかりません。

4

3 に答える 3

13

リロード後に tinymce エディタを再初期化できるようにするには、リロードする前に tinymce を正しくシャットダウンする必要があります。tinymce は dom の周りを引きずられるのを好まないため、これが必要です。また、初期化されたエディター インスタンスは 1 つの一意の ID を持つ場合があります (reload を使用すると、tinymce は同じ ID で 2 番目のエディターを初期化しようとしますが、これは失敗します)。

Tinymce3: edtor インスタンスをシャットダウンするには、次を使用します。

tinymce.execCommand('mceRemoveControl',true, editor_id);

使用を再初期化するには

tinymce.execCommand('mceAddControl',true, editor_id);

Tinymce4: edtor インスタンスをシャットダウンするには、次を使用します。

tinymce.execCommand('mceRemoveEditor',true,editor_id);

使用を再初期化するには

tinymce.execCommand('mceAddEditor',true,editor_id);
于 2013-02-20T11:30:30.617 に答える
2

私にとって tinyMCE.remove(editor_id) は機能しました。

于 2015-12-22T04:12:50.697 に答える
1

Tinymce4: edtor インスタンスをシャットダウンするには、次を使用します。

tinymce.remove(); 

または1つの一意のIDを示します

tinymce.execCommand('mceRemoveEditor',true,editor_id);

使用を再初期化するには

tinymce.init(conftinymce);

または1つの一意のIDを示します

tinymce.execCommand('mceAddEditor',true,editor_id);
于 2016-08-17T21:03:52.523 に答える