如果在页面加载时初始化,tinyMCE仅显示在对话框中

时间:2010-12-14 16:18:58

标签: jquery ajax tinymce

我创建了一个使用大量AJAX请求的应用程序。它显示一个产品表,然后您可以单击产品名称打开一个对话框(box1)。在box1中,您可以单击另一个链接列表。单击时,它将打开另一个对话框(框2)。

在box2中,我有一个textarea字段,它被初始化为tinyMCE。出于某种原因,将textarea初始化为tinyMCE编辑器是行不通的。所以,我创建了一个单独的textarea字段,在一个独立的div中初始化为页面加载时的tinyMCE,工作正常。所以我在框2内导航到textarea,令人惊讶的是,它初始化为一个tinyMCE。所以,我只是将那个独立的div设置为不显示。这有什么用呢?

暂时,我会这样离开,因为它有效。但是,我非常怀疑这是正确的方法。有没有其他人经历过类似的事情?

如果我发布一些代码,请告诉我。

感谢。

编辑:根据要求,这里有一些代码。请记住,initTinyMCE函数是很久以前由其他人从经典ASP文件编写的。我的工作是将其转换为aspx文件。

后端文件创建textarea并调用initTinyMCE()javascript函数...

htmlString.Append("<p><span class=\"regTextBld\"><strong>Scenario Text</strong></span>");
            htmlString.Append("<script type=\"text/javascript\">initTinyMCE();</script>");
            htmlString.Append("<textarea class=\"TinyMCEeditor\" name=\"txtEntry\" id=\"txtEntry\" style=\"height:400px; width: 99%;\">" + reader["assumptions"] + "</textarea></p>");

这是initTinyMCE函数......

function initTinyMCE() {
        //alert("x");
        initPlugins();
        tinyMCE.init({
            mode: "specific_textareas",
            editor_selector: "TinyMCEeditor",
            theme: "advanced",
            //plugins : "economy,safari,style,table,advhr,advimage,inlinepopups,insertdatetime,preview,media,searchreplace,print,contextmenu,paste,directionality,fullscreen,visualchars,nonbreaking,template",
            plugins: "economy,safari,style,table,inlinepopups,searchreplace,print,contextmenu,paste,fullscreen,visualchars,medclink",
            theme_advanced_buttons1: "cut,copy,paste,pastetext,replace,print,|,undo,redo,|,rspell,|,link,unlink,|,hr,image,table,|,code",
            theme_advanced_buttons2: "bold,italic,underline,removeformat,|,numlist, bullist,outdent,indent,|,justifyleft,justifycenter,justifyright,justifyfull,|,nonbreaking,charmap",
            theme_advanced_buttons3: "",
            theme_advanced_toolbar_location: "top",
            theme_advanced_toolbar_align: "left",
            content_css: "/style/intranet.css?" + new Date().getTime(),
            paste_preprocess: function(pl, o) {
                o.content = o.content.replace(/\u2019/gi, "'"); // ’
                o.content = o.content.replace(/\u201C/gi, "\""); // “
                o.content = o.content.replace(/\u201D/gi, "\""); // â€
            },
            cleanup: false,
            encoding: "html",
            entity_encoding: "named",
            verify_html: true
        });
    }

1 个答案:

答案 0 :(得分:1)

我正在使用jquery tinymce

$('#textareaid').tinymce().show();

单击textarea激活tinymce时使用此代码。