2012-10-23 51 views
6

如何使用外部JS啓用/禁用CKEditor的保存按鈕?我不想完全刪除它,只需更改灰色和彩色圖標之間的外觀,以便更方便用戶使用。以編程方式控制保存按鈕啓用/禁用狀態

我保存按鈕,像這樣產生的:

CKEDITOR.plugins.registered['save'] = 
{ 
    init : function(editor) 
    { 
     var command = editor.addCommand('save', { 
      modes : { wysiwyg:1, source:1 }, 
      exec : function(editor) { 
       if(My.Own.CheckDirty()) 
        My.Own.Save(); 
       else 
        alert("No changes."); 
      } 
     }); 
     editor.ui.addButton('Save',{label : '',command : 'save'}); 
    } 
} 

回答

16

在這裏你去:

對於3.6.x的:

CKEDITOR.instances.yourEditorInstance.getCommand('save').disable(); 
CKEDITOR.instances.yourEditorInstance.getCommand('save').enable(); 

對於4.x版:

CKEDITOR.instances.yourEditorInstance.commands.save.disable(); 
CKEDITOR.instances.yourEditorInstance.commands.save.enable(); 
+0

優秀!謝謝你讓我走向正確的軌道。我必須改變它一點,因爲我的實例沒有「命令」變量,我用'CKEDITOR.instances.yourEditorInstance.getCommand('save')。disable()' – Nenotlep

+1

謝謝,我在CKEditor 4上檢查過它。其中'getCommand()'不再是必需的。更新了我的答案。 – oleq