Class FormApp

表单应用

允许脚本打开现有 Form 或创建新的 Form

// Open a form by ID.
const existingForm = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

// Create and open a form.
const newForm = FormApp.create('Form Name');

属性

属性类型说明
AlignmentAlignment图片对齐类型的枚举。
DestinationTypeDestinationType可存储表单响应的目的地类型的枚举。
FeedbackTypeFeedbackTypeFeedbacks 格式的类型枚举。
ItemTypeItemTypeItems 格式的类型枚举。
PageNavigationTypePageNavigationType枚举了浏览网页的可能行为。

方法

方法返回类型简介
create(title)Form创建并返回新的 Form
createCheckboxGridValidation()CheckboxGridValidationBuilder返回 CheckboxGridValidationBuilder 的实例,可用于对 CheckboxGridItem 设置验证。
createCheckboxValidation()CheckboxValidationBuilder返回 CheckboxValidationBuilder 的实例,可用于对 CheckboxItem 设置验证。
createFeedback()QuizFeedbackBuilder返回一个 QuizFeedbackBuilder 实例,该实例可用于为可评分的 Item 设置反馈。
createGridValidation()GridValidationBuilder返回一个 GridValidationBuilder 实例,可用于对 GridItem 设置验证。
createParagraphTextValidation()ParagraphTextValidationBuilder返回 ParagraphTextValidationBuilder 的实例,该实例可用于对 ParagraphTextItem 设置验证。
createTextValidation()TextValidationBuilder返回 TextValidationBuilder 的实例,该实例可用于对 TextItem 设置验证。
getActiveForm()Form返回脚本绑定到容器的形式。
getUi()Ui返回表单编辑器界面环境的实例,以便脚本添加菜单、对话框和边栏等功能。
openById(id)Form返回具有指定 ID 的 Form
openByUrl(url)Form返回具有指定网址的 Form

详细文档

create(title)

创建并返回新的 Form。如果给定标题为 null 或为空,则会抛出异常。

// Create and open a form.
const form = FormApp.create('Form Name');

参数

名称类型说明
titleString新表单的名称

返回

Form - 新表单

抛出

Error - 如果指定的标题为 null 或空

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/forms

createCheckboxGridValidation()

返回 CheckboxGridValidationBuilder 的实例,可用于对 CheckboxGridItem 设置验证。

返回

CheckboxGridValidationBuilder


createCheckboxValidation()

返回 CheckboxValidationBuilder 的实例,可用于对 CheckboxItem 设置验证。

返回

CheckboxValidationBuilder


createFeedback()

返回一个 QuizFeedbackBuilder 实例,该实例可用于为可评分的 Item 设置反馈。

返回

QuizFeedbackBuilder


createGridValidation()

返回一个 GridValidationBuilder 实例,可用于对 GridItem 设置验证。

返回

GridValidationBuilder


createParagraphTextValidation()

返回 ParagraphTextValidationBuilder 的实例,该实例可用于对 ParagraphTextItem 设置验证。

返回

ParagraphTextValidationBuilder


createTextValidation()

返回 TextValidationBuilder 的实例,该实例可用于对 TextItem 设置验证。

返回

TextValidationBuilder


getActiveForm()

返回脚本绑定到容器的形式。如需与脚本未绑定到容器的表单互动,请改用 openById(id)openByUrl(url)

// Get the form to which this script is bound.
const form = FormApp.getActiveForm();

返回

Form - 脚本绑定的表单;如果脚本未绑定到表单,则为 null

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getUi()

返回表单编辑器界面环境的实例,以便脚本添加菜单、对话框和边栏等功能。脚本只能与打开的表单编辑器的当前实例(而非回复者看到的视图)的界面互动,并且只有在脚本绑定到表单的情况下才能执行此操作。如需了解详情,请参阅菜单对话框和边栏指南。

// Add a custom menu to the active form, including a separator and a sub-menu.
function onOpen(e) {
  FormApp.getUi()
      .createMenu('My Menu')
      .addItem('My menu item', 'myFunction')
      .addSeparator()
      .addSubMenu(
          FormApp.getUi()
              .createMenu('My sub-menu')
              .addItem('One sub-menu item', 'mySecondFunction')
              .addItem('Another sub-menu item', 'myThirdFunction'),
          )
      .addToUi();
}

返回

Ui - 此表单的界面环境的实例


openById(id)

返回具有指定 ID 的 Form。如果 ID 无效或用户无权打开表单,则会抛出异常。

// Open a form by ID.
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');

参数

名称类型说明
idString要打开的表单的 ID

返回

Form - 具有指定 ID 的表单

抛出

Error - 如果给定 ID 无效或用户权限不足

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/forms

openByUrl(url)

返回具有指定网址的 Form。如果网址无效或用户无权打开表单,则会抛出异常。

// Open a form by URL.
const form = FormApp.openByUrl(
    'https://docs.google.com/forms/d/1234567890abcdefghijklmnopqrstuvwxyz_a1b2c3/edit',
);

参数

名称类型说明
urlString要打开的表单的网址

返回

Form - 包含给定网址的表单

抛出

Error - 如果指定的网址无效或用户权限不足

授权

使用此方法的脚本需要获得以下一个或多个范围的授权:

  • https://www.googleapis.com/auth/forms