动态添加tinymce到新textarea

时间:2012-02-01 06:14:51

标签: jquery tinymce html-editor

我该怎么做

function addTinyText(id, text){
//add textarea to DOM
$('<textarea id="txt'+id+'"></textarea>').append(text).appendTo('body');
//init tineMCE
 tinyMCE.init({
        theme : "advanced",
        plugins : "emotions,spellchecker"
});
//add tinymce to this
tinyMCE.execCommand("mceAddControl", false, 'txt'+id);
}

但是每次我们有一个新的textarea + tinyMCE但没有文本

我错了什么?

2 个答案:

答案 0 :(得分:2)

我搜索了很长时间才找到类似问题的答案。

即使我让编辑器出现,我的内容也没有发布。

我得到了这样的工作:

    jQuery('.wysiwyg').tinymce({
      // Location of TinyMCE script
      script_url : 'path/tinymce/tiny_mce.js',

      // General options
      theme : "advanced",
     .........
     .........
     ......... etc

我使用标准的jquery代码来启动所有带有类名称wysiwyg的文本区域作为tinymce对象。

在ajax调用完成并加载新的textarea后,我运行此函数:

jQuery(".wysiwyg").each(function(){ 
    tinyMCE.execCommand("mceAddControl",false, this.id);
});

现在我的代码终于正确发布了。

答案 1 :(得分:1)

线

$('<textarea id="txt'+id+'"></textarea>').append(text).appendTo('body');

应该是行

$('<textarea id="txt'+id+'"></textarea>').text(text).appendTo('body');