Ein Eingabefeld, in dem Nutzer zwischen einer Reihe vordefinierter Optionen wählen können.
Unterstützt die Validierung von Formulareinsendungen nur für die Menüs SelectionInputType.DROP_DOWN und SelectionInputType.MULTI_SELECT. Wenn Action.setAllWidgetsAreRequired(allWidgetsAreRequired) auf true festgelegt ist oder dieses Widget über Action.addRequiredWidget(requiredWidget) angegeben wird, wird die Übermittlungsaktion blockiert, sofern kein Wert ausgewählt ist.
Verfügbar für Google Workspace-Add‑ons und Google Chat-Apps.
const checkboxGroup = CardService.newSelectionInput() .setType(CardService.SelectionInputType.CHECK_BOX) .setTitle('A group of checkboxes. Multiple selections are allowed.') .setFieldName('checkbox_field') .addItem('checkbox one title', 'checkbox_one_value', false) .addItem('checkbox two title', 'checkbox_two_value', true) .addItem('checkbox three title', 'checkbox_three_value', true) .setOnChangeAction( CardService.newAction().setFunctionName('handleCheckboxChange'), ); const radioGroup = CardService.newSelectionInput() .setType(CardService.SelectionInputType.RADIO_BUTTON) .setTitle( 'A group of radio buttons. Only a single selection is allowed.') .setFieldName('checkbox_field') .addItem('radio button one title', 'radio_one_value', true) .addItem('radio button two title', 'radio_two_value', false) .addItem('radio button three title', 'radio_three_value', false); const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', ) .setMultiSelectMaxSelectedItems(3) .setMultiSelectMinQueryLength(1);
Methoden
| Methode | Rückgabetyp | Kurzbeschreibung |
|---|---|---|
add | Selection | Legt die Datenquellenkonfigurationen für das Auswahlfeld fest. |
add | Widget | Fügt die Ereignisaktion hinzu, die für das Widget ausgeführt werden kann. |
add | Selection | Fügt ein neues Element hinzu, das ausgewählt werden kann. |
add | Selection | Fügt für Menüs mit Mehrfachauswahl ein neues Element hinzu, das ausgewählt werden kann. |
set | Selection | Legt eine externe Datenquelle fest, z. B. eine relationale Datenbank. |
set | Selection | Legt den Schlüssel fest, der diese Auswahl-Eingabe im Ereignisobjekt identifiziert, das bei einer UI-Interaktion generiert wird. |
set | Widget | Legt die eindeutige ID fest, die zum Identifizieren des zu ändernden Widgets verwendet wird. |
set | Selection | Legt die maximale Anzahl von Elementen fest, die ein Nutzer auswählen kann. |
set | Selection | Legt die Anzahl der Textzeichen fest, die ein Nutzer eingibt, bevor die App die automatische Vervollständigung abfragt und vorgeschlagene Elemente auf der Karte anzeigt. |
set | Selection | Legt eine Action fest, die immer dann ausgeführt wird, wenn sich die Auswahl ändert. |
set | Selection | Legt eine Datenquelle aus Google Workspace fest. |
set | Selection | Legt den Titel fest, der vor dem Eingabefeld angezeigt werden soll. |
set | Selection | Legt den Typ dieser Eingabe fest. |
set | Widget | Legt die Sichtbarkeit des Widgets fest. |
Detaillierte Dokumentation
addDataSourceConfig(dataSourceConfig)
Legt die Datenquellenkonfigurationen für das Auswahlfeld fest. Dieses Feld bietet eine detailliertere Steuerung der Datenquelle. Dieses Feld ist optional.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .setDataSourceConfig( CardService.newDataSourceConfig().setPlatformDataSource( CardService.newPlatformDataSource().setCommonDataSource( CardService.CommonDataSource.USER, ) ) );
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
data | Data | Die Datenquellenkonfiguration, die auf die Auswahl angewendet werden soll. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
addEventAction(eventAction)
Fügt die Ereignisaktion hinzu, die für das Widget ausgeführt werden kann.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
event | Event | Die hinzuzufügende Event. |
Rückflug
Widget – Das Objekt für die Verkettung.
addItem(text, value, selected)
Fügt ein neues Element hinzu, das ausgewählt werden kann.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
text | Object | Der Text, der für dieses Element angezeigt werden soll. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert. |
value | Object | Der Formulareingabewert, der über den Callback gesendet wird. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert. |
selected | Boolean | Gibt an, ob das Element standardmäßig ausgewählt ist. Wenn für die Auswahl nur ein Wert zulässig ist (z. B. bei Optionsfeldern oder einem Drop-down-Menü), legen Sie dieses Feld nur für ein Element fest. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
addMultiSelectItem(text, value, selected, startIconUri, bottomText)
Fügt für Menüs mit Mehrfachauswahl ein neues Element hinzu, das ausgewählt werden kann.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', );
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
text | Object | Der Text, der für dieses Element angezeigt werden soll. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert. |
value | Object | Der Formulareingabewert, der über den Callback gesendet wird. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert. |
selected | Boolean | Gibt an, ob das Element standardmäßig ausgewählt ist. Wenn für die Auswahl nur ein Wert zulässig ist (z. B. bei Optionsfeldern oder einem Drop-down-Menü), legen Sie dieses Feld nur für ein Element fest. |
start | Object | Bei Menüs mit Mehrfachauswahl die URL für das Symbol, das neben dem Textfeld des Elements angezeigt wird. PNG- und JPEG-Dateien werden unterstützt. |
bottom | Object | Bei Mehrfachauswahlmenüs eine Textbeschreibung oder ein Label, das unter dem Textfeld des Elements angezeigt wird. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setExternalDataSource(action)
Legt eine externe Datenquelle fest, z. B. eine relationale Datenbank.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .setMultiSelectMaxSelectedItems(5) .setMultiSelectMinQueryLength(2) .setExternalDataSource( CardService.newAction().setFunctionName('getContacts'), );
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
action | Action | Die externe Datenquelle. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setFieldName(fieldName)
Legt den Schlüssel fest, der diese Auswahl-Eingabe im Ereignisobjekt identifiziert, das bei einer UI-Interaktion generiert wird. Für den Nutzer nicht sichtbar. Erforderlich, muss eindeutig sein.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
field | String | Der Name, der diesem Eingang zugewiesen werden soll. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setId(id)
Legt die eindeutige ID fest, die zum Identifizieren des zu ändernden Widgets verwendet wird. Die Mutation von Widgets wird nur in Add-ons unterstützt.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
id | String | Die ID des Widgets mit einem Limit von 64 Zeichen und im Format „[a-zA-Z0-9-]+“. |
Rückflug
Widget – Dieses Objekt zur Verkettung.
setMultiSelectMaxSelectedItems(maxSelectedItems)
Legt die maximale Anzahl von Elementen fest, die ein Nutzer auswählen kann.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .setMultiSelectMaxSelectedItems(3) .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', );
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
max | Integer | Die maximale Anzahl von Elementen. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setMultiSelectMinQueryLength(queryLength)
Legt die Anzahl der Textzeichen fest, die ein Nutzer eingibt, bevor die App die automatische Vervollständigung abfragt und vorgeschlagene Elemente auf der Karte anzeigt.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('multiselect') .setTitle('A multi select input example.') .setMultiSelectMinQueryLength(1) .addMultiSelectItem( 'Contact 1', 'contact-1', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact one description', ) .addMultiSelectItem( 'Contact 2', 'contact-2', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact two description', ) .addMultiSelectItem( 'Contact 3', 'contact-3', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact three description', ) .addMultiSelectItem( 'Contact 4', 'contact-4', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact four description', ) .addMultiSelectItem( 'Contact 5', 'contact-5', false, 'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png', 'Contact five description', );
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
query | Integer | Die Anzahl der Textzeichen. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setOnChangeAction(action)
Legt eine Action fest, die immer dann ausgeführt wird, wenn sich die Auswahl ändert.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
action | Action | Die erforderliche Aktion. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setPlatformDataSource(platformDataSource)
Legt eine Datenquelle aus Google Workspace fest. Wird verwendet, um Elemente in einem Menü mit Mehrfachauswahl zu füllen.
const multiSelect = CardService.newSelectionInput() .setType(CardService.SelectionInputType.MULTI_SELECT) .setFieldName('contacts') .setTitle('Selected contacts') .setPlatformDataSource( CardService.newPlatformDataSource().setCommonDataSource( CardService.CommonDataSource.USER, ), );
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
platform | Platform | Die Datenquelle. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setTitle(title)
Legt den Titel fest, der vor dem Eingabefeld angezeigt werden soll.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
title | String | Der Titel des Eingabefelds. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setType(type)
Legt den Typ dieser Eingabe fest. Die Standardeinstellung ist CHECKBOX.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
type | Selection | Der Auswahltyp. |
Rückflug
SelectionInput – Dieses Objekt zur Verkettung.
setVisibility(visibility)
Legt die Sichtbarkeit des Widgets fest. Der Standardwert ist „VISIBLE“.
Parameter
| Name | Typ | Beschreibung |
|---|---|---|
visibility | Visibility | Die Visibility des Widgets. |
Rückflug
Widget – Das Objekt für die Verkettung.