Class Choice
Stay organized with collections
Save and categorize content based on your preferences.
Choice
A single choice associated with a type of Item
that supports choices, like CheckboxItem
, ListItem
, or MultipleChoiceItem
.
// Create a new form and add a multiple-choice item.
const form = FormApp.create('Form Name');
const item = form.addMultipleChoiceItem();
item.setTitle('Do you prefer cats or dogs?').setChoices([
item.createChoice('Cats', FormApp.PageNavigationType.CONTINUE),
item.createChoice('Dogs', FormApp.PageNavigationType.RESTART),
]);
// Add another page because navigation has no effect on the last page.
form.addPageBreakItem().setTitle('You chose well!');
// Log the navigation types that each choice results in.
const choices = item.getChoices();
for (let i = 0; i < choices.length; i++) {
Logger.log(
'If the respondent chooses "%s", the form will %s.',
choices[i].getValue(),
choices[i].getPageNavigationType(),
);
}
Detailed documentation
getGotoPage()
Gets the PageBreakItem
set as a GO_TO_PAGE
destination
if the responder selects this choice and completes the current page. This method applies only
to choices associated with MultipleChoiceItems
; for other choices,
it returns null
.
Return
PageBreakItem
— the GO_TO_PAGE
destination for this choice, or null
if there is none
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getPageNavigationType()
Gets the PageNavigationType
that occurs if the responder selects this choice and
completes the current page. This method applies only to choices associated with MultipleChoiceItems
; for other choices, it returns null
.
Return
PageNavigationType
— the navigation action for this choice, or null
if there is none
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getValue()
Gets the choice's value, which respondents see as a label when viewing the form.
Return
String
— the choice's value
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
isCorrectAnswer()
Gets whether the choice is a correct answer for the question. This method only applies to
questions that are part of a quiz; for non-quiz forms, it returns false.
Return
Boolean
— Whether the choice is a correct answer.
Authorization
Scripts that use this method require authorization with one or more of the following scopes:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2024-12-02 UTC.
[null,null,["Last updated 2024-12-02 UTC."],[[["\u003cp\u003eA Choice object represents a single selection option within Google Forms items like checkboxes, lists, and multiple-choice questions.\u003c/p\u003e\n"],["\u003cp\u003eChoices can be associated with specific navigation actions, like continuing to the next page or restarting the form, using \u003ccode\u003ePageNavigationType\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eYou can retrieve a choice's display value (what the user sees) and determine if it's marked as a correct answer (for quizzes) using dedicated methods.\u003c/p\u003e\n"],["\u003cp\u003eChoice objects are integral for defining response options and controlling form flow based on user selections.\u003c/p\u003e\n"]]],[],null,["# Class Choice\n\nChoice\n\nA single choice associated with a type of [Item](/apps-script/reference/forms/item) that supports choices, like [CheckboxItem](/apps-script/reference/forms/checkbox-item), [ListItem](/apps-script/reference/forms/list-item), or [MultipleChoiceItem](/apps-script/reference/forms/multiple-choice-item).\n\n```javascript\n// Create a new form and add a multiple-choice item.\nconst form = FormApp.create('Form Name');\nconst item = form.addMultipleChoiceItem();\nitem.setTitle('Do you prefer cats or dogs?').setChoices([\n item.createChoice('Cats', FormApp.PageNavigationType.CONTINUE),\n item.createChoice('Dogs', FormApp.PageNavigationType.RESTART),\n]);\n\n// Add another page because navigation has no effect on the last page.\nform.addPageBreakItem().setTitle('You chose well!');\n\n// Log the navigation types that each choice results in.\nconst choices = item.getChoices();\nfor (let i = 0; i \u003c choices.length; i++) {\n Logger.log(\n 'If the respondent chooses \"%s\", the form will %s.',\n choices[i].getValue(),\n choices[i].getPageNavigationType(),\n );\n}\n``` \n\n### Methods\n\n| Method | Return type | Brief description |\n|-----------------------------------------------------|-------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| [getGotoPage()](#getGotoPage()) | [PageBreakItem](/apps-script/reference/forms/page-break-item) | Gets the [PageBreakItem](/apps-script/reference/forms/page-break-item) set as a [GO_TO_PAGE](/apps-script/reference/forms/page-navigation-type) destination if the responder selects this choice and completes the current page. |\n| [getPageNavigationType()](#getPageNavigationType()) | [PageNavigationType](/apps-script/reference/forms/page-navigation-type) | Gets the [PageNavigationType](/apps-script/reference/forms/page-navigation-type) that occurs if the responder selects this choice and completes the current page. |\n| [getValue()](#getValue()) | `String` | Gets the choice's value, which respondents see as a label when viewing the form. |\n| [isCorrectAnswer()](#isCorrectAnswer()) | `Boolean` | Gets whether the choice is a correct answer for the question. |\n\nDetailed documentation\n----------------------\n\n### `get``Goto``Page()`\n\nGets the [PageBreakItem](/apps-script/reference/forms/page-break-item) set as a [GO_TO_PAGE](/apps-script/reference/forms/page-navigation-type) destination\nif the responder selects this choice and completes the current page. This method applies only\nto choices associated with [MultipleChoiceItems](/apps-script/reference/forms/multiple-choice-item); for other choices,\nit returns `null`.\n\n#### Return\n\n\n[PageBreakItem](/apps-script/reference/forms/page-break-item) --- the [GO_TO_PAGE](/apps-script/reference/forms/page-navigation-type) destination for this choice, or `null` if there is none\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `get``Page``Navigation``Type()`\n\nGets the [PageNavigationType](/apps-script/reference/forms/page-navigation-type) that occurs if the responder selects this choice and\ncompletes the current page. This method applies only to choices associated with [MultipleChoiceItems](/apps-script/reference/forms/multiple-choice-item); for other choices, it returns `null`.\n\n#### Return\n\n\n[PageNavigationType](/apps-script/reference/forms/page-navigation-type) --- the navigation action for this choice, or `null` if there is none\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `get``Value()`\n\nGets the choice's value, which respondents see as a label when viewing the form.\n\n#### Return\n\n\n`String` --- the choice's value\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `is``Correct``Answer()`\n\nGets whether the choice is a correct answer for the question. This method only applies to\nquestions that are part of a quiz; for non-quiz forms, it returns false.\n\n#### Return\n\n\n`Boolean` --- Whether the choice is a correct answer.\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`"]]