此插件会在TinyMCE工具栏中添加一个保存按钮,该按钮将提交编辑器所在的表单。

基本设置

tinymce.init({
  selector: 'textarea',  // change this value according to your HTML
  plugins: 'save',
  toolbar: 'save'
});

有关如何使用模块打包器打包此插件的信息,请参阅 打包TinyMCE - 概述。

保存错误消息

如果您将表单的提交按钮命名为“submit”,则会显示 "Error: Form submit field collision." 错误消息,因为这样会与JS表单的 submit 函数发生冲突,导致无法通过代码提交表单。可以通过将提交按钮命名为 "submitbtn" 或类似名称来轻松避免此问题。

因此,请将此代码:

<form><button name="submit"></button></form>

替换为:

<form><button name="submitbtn"></button></form>

选项

这些设置会影响 save 插件的执行。此部分包含了在保存内容或取消保存内容后执行的回调函数。此外,此处还有一个设置,可在未对内容进行任何修改时禁用保存按钮。

save_enablewhendirty

此选项允许您在对编辑器内容进行修改之前禁用保存按钮。此选项默认启用。

类型: Boolean

默认值: true

可能的值: true,false

示例:使用 save_enablewhendirty

tinymce.init({
  selector: 'textarea',  // change this value according to your HTML
  plugins: 'save',
  toolbar: 'save',
  save_enablewhendirty: false
});

save_oncancelcallback

此选项允许您指定调用取消按钮/命令时要执行的函数。

类型: Function

示例:使用 save_oncancelcallback

tinymce.init({
  selector: 'textarea',  // change this value according to your HTML
  plugins: 'save',
  toolbar: 'save',
  save_oncancelcallback: () => {
    console.log('Save canceled');
  }
});

save_onsavecallback

此选项允许您指定调用保存按钮/命令时要执行的函数。

类型: Function

示例:使用 save_onsavecallback

tinymce.init({
  selector: 'textarea',  // change this value according to your HTML
  plugins: 'save',
  toolbar: 'save',
  save_onsavecallback: () => {
    console.log('Saved');
  }
});

工具栏按钮

Save插件提供以下工具栏按钮:

工具栏按钮标识符描述

cancel

取消/将编辑器内容重置为其初始状态。

save

将当前编辑器内容保存到表单或通过ajax调用保存。

可以通过以下方式将这些工具栏按钮添加到编辑器中:

命令

Save插件提供以下TinyMCE命令。

命令描述

mceCancel

将编辑器内容重置为使用 mceSave、save 工具栏按钮或 Save 菜单项创建的上一个保存点。如果不存在保存点,此命令会将编辑器内容重置为初始状态。

mceSave

保存当前编辑器内容。

示例
tinymce.activeEditor.execCommand('mceCancel');
tinymce.activeEditor.execCommand('mceSave');