javascript - 如何使用 contenteditable :false 启动 TinyMCE

标签 javascript

我正在努力构建一个 TinyMCE textarea 输入字段,它应该根据其他输入字段的状态从启用/禁用切换。 到目前为止,我已经完成了以下工作来切换它:

var mceInstance = tinymce.get(TargetElementId);
mceInstance.getBody().setAttribute('contenteditable',false);

通过像这样切换“contenteditable”参数,我可以轻松地禁用或禁用文本区域,到目前为止一切顺利。

我必须解决的最后一个问题是,文本区域应该在初始加载时被禁用,而且似乎“contenteditable”参数不能作为 tinyMCE.init() 参数传递... 有一个“只读”参数可以通过 tinyMCE.init() 传递,但以后不能切换...

关于如何实现这一点有什么想法吗?

最佳答案

解决了!

我发现通过将 init_instance_callback 与 TinyMCE 初始化代码一起传递,我可以运行与“切换”函数中使用的代码相同的代码。 因此,如果需要,您可以在 TinyMCE 初始化部分传递它:

init_instance_callback : function(editor)
{
    if(document.getElementById(editor.id).hasAttribute('disabled'))
    {
        editor.getBody().setAttribute('contenteditable',false);
        editor.getBody().style.backgroundColor = "grey";
    }
}

上面的代码将查看指定的实例,如果原始 HTML 元素(在我的例子中是 textarea)具有 'disabled' 属性,它会将 'contenteditable' 参数设置为 false。

我希望这对其他人有用,我知道我破解它时很开心:-)

关于javascript - 如何使用 contenteditable :false 启动 TinyMCE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20763268/

相关文章:

javascript - 处理 res.json 中的 null 获取

javascript - Wistia E-v1.js 脚本被加载两次

javascript - Firebug : How to make net tab persistent?

javascript - 在 Angular .js 范围内,innerHTml 有何用途?

javascript - PKCS#12 (.pfx .p12) 使用 node.js 生成?

javascript - 事件链接上的背景位置更改 - 基于图像的导航

javascript - 在 Angular Controller 中将 Rails 日期时间更改为字符串

javascript - Flask 文件未在 Javascript 提取时更新

javascript - 如何在模态内提交时隐藏表列

javascript - 仅在第一次单击按钮时增加计数器