2

当 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 />

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

在此处输入图像描述

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

在此处输入图像描述

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

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

1 回答 1

2

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

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

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

重新初始化使用

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

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

于 2013-03-21T12:51:54.707 回答