You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

模态框关闭重开后tinyMCE编辑器失效变回普通文本框如何解决?

问题原因
  • TinyMCE 初始化时会将匹配选择器的textarea替换为自定义编辑器DOM结构,同时在全局注册对应编辑器实例,且会给关联的textarea打上过初始化标记
  • 关闭模态框时如果仅执行.modal-body清空操作或仅隐藏模态框,没有销毁之前生成的TinyMCE实例,第二次打开模态框新增的同类名textarea会被TinyMCE判定为无需重复初始化,最终显示为普通文本框
解决方案

最通用的修复方案是每次清空模态框内容前,先销毁已存在的对应TinyMCE实例,修改后代码如下:

// 第一步:先销毁所有类为tinymce的编辑器实例
tinymce.remove('.tinymce');
// 再执行原有逻辑
$(".modal-body").empty();
// 生成form的逻辑省略
var form = ...
$(".modal-body").append(form);
// 重新初始化编辑器
tinyMCE.init({
    mode: "specific_textareas",
    editor_selector: "tinymce",
    height : "350"
});

如果你的模态框仅做隐藏处理、内部form不会重新生成,也可以选择在首次初始化完成后,每次打开模态框时调用tinymce.get('你的编辑器ID').show()恢复编辑器显示,该方案需要给对应textarea设置固定ID。

内容的提问来源于stack exchange,提问作者Štěpán Chvatík

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 13:18:04