我的问题似乎已经问过,但事实上我的情况不同。
问题: TypeError:this.getDoc(...)未定义
我已做的事情: -update jquery版本 - 测试每个参数传递给tinymce函数,一切正常
我的代码:
var html = '<div class="traduce-fields"><h4></h4><div class="text-block"><textarea class="textarea-tinymce" id="textarea-' + dataLang + '"></textarea></div><div class="bt-valide-traduce" onclick="sendTraduce($(this))"><p>TO TRADUCE !</p></div></div>';
$('.traduce-bloc-text').find('.traduce-inner').html(html);
//active de nouveau tinyMCE
tinymce.init({selector: '.textarea-tinymce'});
var selector = 'textarea-' + dataLang;
tinymce.get(selector).setContent('ok');
答案 0 :(得分:1)
正如我原来的评论中提到的,我的赌注是你在完全初始化之前尝试使用TinyMCE。有一个函数可以告诉你何时完全初始化,所以你可以使用它来设置内容:
tinymce.init({
selector: 'textarea',
...
setup: function (editor) {
editor.on('init', function () {
this.setContent('Using the on init stuff!');
});
}
由于您需要时间点击警报,这可能允许TinyMCE完成加载,因此setContent()
调用正在运行。
答案 1 :(得分:0)
我的鳕鱼很长,并且在JS小提琴中表现出来很难,但我得到的东西可以帮助你:
此代码有效:
tinymce.init({selector: '.textarea-tinymce'});
alert(tinymce.get(idTextarea));
var tinyMCEInstance = tinymce.get(idTextarea);
tinyMCEInstance.setContent('ok');
这不是:
tinymce.init({selector: '.textarea-tinymce'});
/*alert(tinymce.get(idTextarea));*/
var tinyMCEInstance = tinymce.get(idTextarea);
tinyMCEInstance.setContent('ok');
这很奇怪,警报可以解决什么样的问题? 谢谢你的帮助。