Class SelectionInput

AuswahlEingabe

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 Sendeaktion 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

MethodeRückgabetypKurzbeschreibung
addDataSourceConfig(dataSourceConfig)SelectionInputLegt die Datenquellenkonfigurationen für das Auswahlsteuerelement fest.
addEventAction(eventAction)WidgetFügt die Ereignisaktion hinzu, die für das Widget ausgeführt werden kann.
addItem(text, value, selected)SelectionInputFügt ein neues Element hinzu, das ausgewählt werden kann.
addMultiSelectItem(text, value, selected, startIconUri, bottomText)SelectionInputFügt für Menüs mit Mehrfachauswahl ein neues Element hinzu, das ausgewählt werden kann.
setExternalDataSource(action)SelectionInputLegt eine externe Datenquelle fest, z. B. eine relationale Datenbank.
setFieldName(fieldName)SelectionInputLegt den Schlüssel fest, der diese Auswahl-Eingabe im Ereignisobjekt identifiziert, das bei einer UI-Interaktion generiert wird.
setId(id)WidgetLegt die eindeutige ID fest, die zum Identifizieren des zu ändernden Widgets verwendet wird.
setMultiSelectMaxSelectedItems(maxSelectedItems)SelectionInputLegt die maximale Anzahl von Elementen fest, die ein Nutzer auswählen kann.
setMultiSelectMinQueryLength(queryLength)SelectionInputLegt die Anzahl der Textzeichen fest, die ein Nutzer eingibt, bevor die App die automatische Vervollständigung abfragt und vorgeschlagene Elemente auf der Karte anzeigt.
setOnChangeAction(action)SelectionInputLegt eine Action fest, die immer dann ausgeführt wird, wenn sich die Auswahl ändert.
setPlatformDataSource(platformDataSource)SelectionInputLegt eine Datenquelle aus Google Workspace fest.
setTitle(title)SelectionInputLegt den Titel fest, der vor dem Eingabefeld angezeigt werden soll.
setType(type)SelectionInputLegt den Typ dieser Eingabe fest.
setVisibility(visibility)WidgetLegt die Sichtbarkeit des Widgets fest.

Detaillierte Dokumentation

addDataSourceConfig(dataSourceConfig)

Legt die Datenquellenkonfigurationen für das Auswahlsteuerelement 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

NameTypBeschreibung
dataSourceConfigDataSourceConfigDie auf die Auswahl anzuwendende Datenquellenkonfiguration.

Rückflug

SelectionInput: Dieses Objekt zur Verkettung.


addEventAction(eventAction)

Fügt die Ereignisaktion hinzu, die für das Widget ausgeführt werden kann.

Parameter

NameTypBeschreibung
eventActionEventActionDie hinzuzufügende EventAction.

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

NameTypBeschreibung
textObjectDer Text, der für dieses Element angezeigt werden soll. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert.
valueObjectDer Formulareingabewert, der über den Callback gesendet wird. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert.
selectedBooleanGibt 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 ein neues Element hinzu, das in Menüs mit Mehrfachauswahl 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

NameTypBeschreibung
textObjectDer Text, der für dieses Element angezeigt werden soll. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert.
valueObjectDer Formulareingabewert, der über den Callback gesendet wird. Nicht-String-Primitive-Argumente werden automatisch in Strings konvertiert.
selectedBooleanGibt 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.
startIconUriObjectBei 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.
bottomTextObjectBei 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

NameTypBeschreibung
actionActionDie 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

NameTypBeschreibung
fieldNameStringDer 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

NameTypBeschreibung
idStringDie 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

NameTypBeschreibung
maxSelectedItemsIntegerDie 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

NameTypBeschreibung
queryLengthIntegerDie 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

NameTypBeschreibung
actionActionDie 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,
                ),
        );
Nur für Google Chat-Apps verfügbar. Nicht für Google Workspace-Add‑ons verfügbar.

Parameter

NameTypBeschreibung
platformDataSourcePlatformDataSourceDie Datenquelle.

Rückflug

SelectionInput: Dieses Objekt zur Verkettung.


setTitle(title)

Legt den Titel fest, der vor dem Eingabefeld angezeigt werden soll.

Parameter

NameTypBeschreibung
titleStringDer Titel des Eingabefelds.

Rückflug

SelectionInput: Dieses Objekt zur Verkettung.


setType(type)

Legt den Typ dieser Eingabe fest. Die Standardeinstellung ist CHECKBOX.

Parameter

NameTypBeschreibung
typeSelectionInputTypeDer Auswahltyp.

Rückflug

SelectionInput: Dieses Objekt zur Verkettung.


setVisibility(visibility)

Legt die Sichtbarkeit des Widgets fest. Der Standardwert ist „VISIBLE“.

Parameter

NameTypBeschreibung
visibilityVisibilityDie Visibility des Widgets.

Rückflug

Widget – Das Objekt für die Verkettung.