TinyMCE 编辑器 getContent 返回文本内容,而不是 HTML

问题描述 投票:0回答:1

我最近升级了 TinyMCE* 版本,发现这个新版本 (4.9.11) 在使用

tinymce.get("myUsercreatedID").getContent()
时不会返回 HTML。

我尝试了

tinymce.get("myUsercreatedID").getContent({format: 'html'})
,但也没有成功。

如何获取 HTML 格式的 TinyMCE 编辑器内容?


* TinyMCE 转向订阅服务,并从其网站和所有网络存储库中删除了所有旧(免费)版本。他们真是太公平了。但是,我发现如果您下载任何 nupkg(仅是一个 zip 文件)并提取内容 -> 脚本 -> tinymce 文件夹,NuGallery 已存档所有版本的副本。

javascript tinymce
1个回答
0
投票

无需使用

.getContent()
来获取编辑器内容。

TinyMCE 的编辑器位于页面上,就像任何其他 HTML 一样,每个 TinyMCE 编辑器都包含在一个 iframe 中。每个编辑器都可以通过以下方法直接访问。

首先,请注意 TinyMCE 要求您为每个编辑器指定一个唯一的 ID - 在本示例中我们将其称为“MyUniqueID”。

const ifm = $_('iframe[id*=MyUniqueID_ifr]');
const innerDoc = ifm.contentDocument || ifm.contentWindow.document;
const myHtml = innerDoc.querySelector('body#tinymce').innerHTML;

注意

body#tinymce
也是用户指定的。您可能将其命名为
tinyMCE
,在这种情况下,字符串将为
body#tinyMCE
——回想一下 JavaScript 是区分大小写的。

© www.soinside.com 2019 - 2024. All rights reserved.