javascript - TinyMCE - 禁用标准保存按钮

标签 javascript jquery tinymce

我尝试以编程方式禁用保存插件的标准“保存”按钮

tinymce.init
  ({
    selector: '#editorMain',
    plugins: "save,code,textcolor,charmap,searchreplace,paste,wordcount",
    height: 400,
    setup: function(editor) {
        editor.on('keyup',function(e){
            console.log(getStats('editorMain').chars);
            var body = tinymce.get('editorMain').getBody();
            var currentValue=tinymce.trim(body.innerText || body.textContent);
            var currentCharsCount=getStats('editorMain').chars;
            var limit=10;
            var diff=limit - currentCharsCount;
            if (diff>-1)
            {
                $("#chars_left").html(diff + " characters left");
            }
            else
            {
                $("#chars_left").html("Your comment is too long");
                // here should we disable the save button
            }

        });
    },

我在 google 上搜索了一个解决方案,发现在 3.x 版本中有一个名为“ControlManager”的对象。这已在版本 4(我当前使用的版本)中删除了

根据文档,应实现以下内容:

// In TinyMCE 4 you can use the simpler stateSelector setting
editor.addButton('SomeButton', {
    text: 'My button',
    stateSelector: 'a'
});

但是这如何适用于“保存”按钮呢?当我使用“保存”插件时,保存按钮就会出现,这不必以编程方式添加。

最佳答案

嗯,这是一个艰难的过程。这:

    tinymce.activeEditor.theme.panel.find('toolbar *')[1];

允许访问该按钮。然后是“.disabled(1)”方法。

遗憾的是我们无法使用元素的名称或 id 来访问它们...

关于javascript - TinyMCE - 禁用标准保存按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33173329/

相关文章:

jquery - TinyMCE 路径,如何指定加载 editor_plugin.js 等内容的位置

javascript - 替换编辑器中的内容?

javascript - AngularJS - 创建 Controller 之间的区别

javascript - 将数据发送到 AngularJs 中的特定 Controller

javascript - jQuery AddClass 然后删除一个类

javascript - 由于切换功能,div 被隐藏

javascript - "Wrapper"TinyMce 自定义插件

javascript - 使用 Alterifyjs 库创建具有不同形式的多个自定义对话框

Javascript Date.toDateString 返回值没有拼接

javascript - 尝试通过 javascript/jquery 根据链接文本有条件地禁用链接