JavaScript弹出窗口中的TinyMCE

时间:2013-03-21 12:31:37

标签: tinymce

当TinyMCE处于弹出状态时,我遇到了TinyMCE的问题。看看我对这个问题的解释。

此代码位于我的JSON弹出窗口

<!-- TinyMCE -->
<script type="text/javascript" src="../../Scripts/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
    tinyMCE.init({
        mode: "textareas",
        theme: "simple"
    });
</script>
<!-- Gets replaced with TinyMCE, remember HTML in a textarea should be encoded -->
<textarea id="elm1" name="elm1" rows="8" cols="80" style="width: 80%">
        Pełny opis...
    </textarea>
<br />

第一次弹出显示时,您可以看到此编辑器

enter image description here

当第二次弹出显示时,您可以看到此编辑器

enter image description here

在我看来问题就在这里(只有一次是在使用这个JS)

 <script type="text/javascript">
        tinyMCE.init({
            mode: "textareas",
            theme: "simple"
        });
    </script>

1 个答案:

答案 0 :(得分:2)

在第二种情况下,您会看到textarea html元素。这可能是因为在关闭第一个弹出窗口时没有正确关闭tinymce。 幕后发生的事情是html结构已经消失,但是当你重新打开弹出框时,仍然会注册编辑器实例并且不会打开具有相同id的新结构。这里的解决方案是在关闭弹出窗口时关闭tinymce。

要关闭编辑器实例,请使用:

tinymce.execCommand('mceRemoveControl',true,'your_editor_id');

重新初始化使用

tinymce.execCommand('mceAddControl',true,'your_editor_id');

Tinymce将编辑器id作为源html元素(您的textarea)的id。如果没有“内容”是默认值。