Entfernen TinyMCE Kontrolle und re-hinzufügen

Ich habe eine js-Anwendung, die nie lädt die Seite, also bei der Navigation muss ich entfernen TinyMCE-Editor-Steuerelemente vollständig, und dann ich möchte zu re-initialisieren bei der Navigation zu einem Gebiet, die es braucht. Ich habe versucht, die akzeptierte Antwort auf diese Frage, aber es scheint sich nichts zu tun.

Wie Entferne ich den tinyMCE und dann wieder neu hinzufügen?

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

und meine konkreten Umsetzung:

  //if I throw an alert here, it does get called, so I know it's not null
  if (tinyMCE.getInstanceById("main-text"))
            tinyMCE.EditorManager.execCommand('mceRemoveControl', true, "main-text");

Ich habe auch versucht

  tinyMCE.remove( tinyMCE.getInstanceById("main-text"));
  //AND
  tinyMCE.remove( "main-text");

Weiß ich, dass das statement wird ausgeführt, wenn ich ein alert in der bedingten... ich weiß, das ist die richtige ID-- gibt es etwas anderes, begraben in der API, die mir fehlt? Dies ist Nicht mit der jQuery version. Der editor besteht auch nach entfernen versuchen, und ich habe sogar einen neuen bekommen, mit der gleichen ID, wenn ich re-init ist es, die durch das navigieren wieder in den Zustand mit der form.

EDIT: die Lösung unten funktioniert nicht in der aktuellen build 3.5b3, nur in 3.4.9. Es gibt einen bug, wo t 'undefined'

Nur für den Fall, dies ist der relevante Teil der DOM nach der init.

 <textarea id="main-text" style="display: none;" aria-hidden="true"></textarea>
<span id="main-text_parent" class="mceEditor defaultSkin" role="application" aria-labelledby="main-text_voice" style="display: inherit;">
<span id="main-text_voice" class="mceVoiceLabel" style="display:none;">Rich Text Area</span>
<table id="main-text_tbl" class="mceLayout" cellspacing="0" cellpadding="0" role="presentation" style="width: 100%; height: 400px;">
<tbody>
<tr class="mceFirst" role="presentation">
<td class="mceToolbar mceLeft mceFirst mceLast" role="presentation">
<div id="main-text_toolbargroup" aria-labelledby="main-text_toolbargroup_voice" role="group" tabindex="-1">
<span role="application">
</div>
<a onfocus="tinyMCE.getInstanceById('main-text').focus();" title="Jump to tool buttons - Alt+Q, Jump to editor - Alt-Z, Jump to element path - Alt-X" accesskey="z" href="#"></a>
</td>
</tr>
<tr>
<tr class="mceLast">
</tbody>
</table>
</span>
InformationsquelleAutor FlavorScape | 2012-04-10
Schreibe einen Kommentar