2

我已经在这里挣扎了好几个小时了。我们在后端为我们的一个消费者系统使用 tinyMCE,并且他们希望能够将用户在 TinyMCE 编辑器中输入的任何文本镜像到常规文本字段(没有 html 标记)在里面)。

这里的想法是有一个用于 HTML 邮件内容 (TinyMCE) 的字段和一个用于简单纯文本邮件 (regular textarea) 的字段。因此,当用户在 TinyMCE 中输入他们的电子邮件内容时,文本将一个字母一个字母地复制到纯文本区域。

但是,即使使用 tinyMCE 特定的 JS,我也无法让这个看似基本的功能正常工作。

这是我最近的尝试(几个,并不是说这比我之前的迭代“更正确”,只是最新的):

    <div class="row not-on-phone">
                    <label for="wysiwyg">
                        <strong>HTML</strong>
                    </label>
                <div>
                    <br style="line-height:1px">
                    <TEXTAREA name="HTML" id="HTML" WRAP="Physical" onkeyup="copyText()" class="rtfeditor"><cfoutput>#HTML#</cfoutput></TEXTAREA>
                    <br style="line-height:1px">
                </div>
            </div>
            <div class="row not-on-phone">
                    <label for="wysiwyg">
                        <strong>Plain Text</strong>
                    </label>
                <div>
                    <br style="line-height:1px">
                    <TEXTAREA name="Text" id="Text" WRAP="Physical" rows="20"><cfoutput>#Text#</cfoutput></TEXTAREA>
                    <br style="line-height:1px">
                </div>
            </div> 

相关JS:

    <script language="javascript">

function copyText (){
    var content = tinymce.get('HTML').getContent({format : 'raw', no_events : 1});
    document.getElementsById('Text').innerHTML = content;
}
</script>

那么,如何通过 TinyMCE 的击键将文本实时复制到这个常规文本区域?

4

1 回答 1

1

For this you will need to use a tinymce onKeydown or onkeyup handler. This one can be set in the tinymce init like this

tinyMCE.init({
   ...
   setup : function(ed) {
      ed.onKeyUp.add(function(ed, evt) {
          copyText();
      });
   }
});
于 2013-04-12T08:47:00.647 回答