TinyMCE:TypeError:this.getDoc(...)未定义

时间:2016-06-29 15:25:52

标签: tinymce-4

我的问题似乎已经问过,但事实上我的情况不同。

问题: 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');

2 个答案:

答案 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');

这很奇怪,警报可以解决什么样的问题? 谢谢你的帮助。