Ich habe diese beiden Codezeilen nacheinander.
tinymce.execCommand('mceAddControl',true,'email_body');
tinyMCE.activeEditor.setContent(data.tplCustom.htmltemplate);
Die zweite Zeile versucht, den Inhalt festzulegen, noch bevor die Tinymce fertig ist. Ich denke, der Grund dafür ist der Fehler “tinyMCE.activeEditor ist null”.
Gibt es eine Möglichkeit zu warten, bis es geladen ist? Vielen Dank
Version 4 von TinyMCE verwendet eine etwas andere Ereignisbindungsmethode.
Fassung 3
// v3.x
tinymce.init({
setup : function(ed) {
ed.onInit.add(function(ed) {
console.debug('Editor is done: ' + ed.id);
});
}
});
Fassung 4
// v4.x
tinymce.init({
setup: function (ed) {
ed.on('init', function(args) {
console.debug(args.target.id);
});
}
});
Bezug:
http://www.tinymce.com/wiki.php/API3:event.tinymce.Editor.onInit
http://www.tinymce.com/wiki.php/Tutorial:Migration_guide_from_3.x
Wenn Sie nicht auf die zugreifen können tinymce.init({...})
Erklärung (wie in WordPress zum Beispiel), können Sie auch verwenden addeditor
Veranstaltung :
/// Fires when an editor is added to the EditorManager collection.
tinymce.on('addeditor', function( event ) {
var editor = event.editor;
var $textarea = $('#' + editor.id);
console.log($textarea.val());
}, true );
TinyMCE ‘addeditor’ Ereignisdokumentation