O widget do SelectionInput
oferece um conjunto de itens selecionáveis, como uma lista de caixas de seleção, botões de opção, chaves ou um menu suspenso.
O widget é compatível com sugestões, que ajudam os usuários a inserir dados uniformes, e ações em mudanças, que são Actions
executadas quando uma mudança ocorre no campo de entrada de texto, como um usuário que adiciona ou exclui texto.
Quando precisar coletar dados definidos e padronizados dos usuários, use este widget SelectionInput
. Para coletar dados definidos dos usuários, use o widget TextInput
.
Os apps de chat recebem e podem processar o valor dos itens selecionados durante eventos de entrada do formulário. Veja mais detalhes sobre como trabalhar com entradas de formulário em Receber dados do formulário.
Compatível apenas com caixas de diálogo. O suporte para mensagens de cartão estará disponível em breve.
Exemplo
A imagem a seguir mostra um card que consiste em um widget SelectionInput
.
Caixas de seleção

SelectionInput
.Botões de opção

SelectionInput
de rádio.Interruptores

SelectionInput
.Lista suspensa

SelectionInput
suspenso.
Este é o JSON do cartão:
Caixas de seleção
{
"cardsV2": [
{
"cardId": "exampleCard",
"card": {
"sections": [
{
"header": "Add new contact",
"widgets": [
{
"selectionInput": {
"type": "CHECK_BOX",
"label": "Contact type",
"name": "contactType",
"items": [
{
"text": "Work",
"value": "Work",
"selected": false
},
{
"text": "Personal",
"value": "Personal",
"selected": false
}
]
}
},
]
}
]
}
}
]
}
Botões de opção
{
"cardsV2": [
{
"cardId": "exampleCard",
"card": {
"sections": [
{
"header": "Add new contact",
"widgets": [
{
"selectionInput": {
"type": "RADIO_BUTTON",
"label": "Contact type",
"name": "contactType",
"items": [
{
"text": "Work",
"value": "Work",
"selected": false
},
{
"text": "Personal",
"value": "Personal",
"selected": false
}
]
}
},
]
}
]
}
}
]
}
Interruptores
{
"cardsV2": [
{
"cardId": "exampleCard",
"card": {
"sections": [
{
"header": "Add new contact",
"widgets": [
{
"selectionInput": {
"type": "SWITCH",
"label": "Contact type",
"name": "contactType",
"items": [
{
"text": "Work",
"value": "Work",
"selected": false
},
{
"text": "Personal",
"value": "Personal",
"selected": false
}
]
}
},
]
}
]
}
}
]
}
Lista suspensa
{
"cardsV2": [
{
"cardId": "exampleCard",
"card": {
"sections": [
{
"header": "Add new contact",
"widgets": [
{
"selectionInput": {
"type": "DROPDOWN",
"label": "Contact type",
"name": "contactType",
"items": [
{
"text": "Work",
"value": "Work",
"selected": false
},
{
"text": "Personal",
"value": "Personal",
"selected": false
}
]
}
},
]
}
]
}
}
]
}
SelectionInput
representação e campos JSON
Representação JSON |
---|
{ "name": string, "label": string, "type": enum ( |
Campos | |
---|---|
name
|
O nome pelo qual a entrada de seleção é identificada em um evento de entrada do formulário. Para ver detalhes sobre como trabalhar com entradas de formulário, consulte Receber dados de formulário . |
label
|
O texto que aparece acima do campo de entrada da seleção na interface do usuário. Especifique o texto que ajuda o usuário a inserir as informações necessárias do app. Por exemplo, se os usuários selecionarem a urgência de um tíquete de trabalho em um menu suspenso, o rótulo poderá ser "Urgência" ou "Selecionar urgência". |
type
|
A forma como uma opção aparece para os usuários. Diferentes opções oferecem suporte a diferentes tipos de interações. Por exemplo, os usuários podem ativar várias caixas de seleção, mas só podem selecionar um valor em um menu suspenso. Cada entrada de seleção é compatível com um tipo de seleção. Não é possível misturar caixas de seleção e interruptores, por exemplo. |
items[]
|
Uma matriz dos itens selecionados. Por exemplo, todas as caixas de seleção marcadas. |
onChangeAction
|
Se especificado, o formulário é enviado quando a seleção muda. Se não for especificado, você precisará especificar um botão separado que envie o formulário. Para ver detalhes sobre como trabalhar com entradas de formulário, consulte Receber dados de formulário . |
SelectionType
valores enumerados
Enums | |
---|---|
CHECK_BOX
|
Um conjunto de caixas de seleção. Os usuários podem marcar várias caixas de seleção por entrada. |
RADIO_BUTTON
|
Um conjunto de botões de opção. Os usuários podem selecionar um botão de opção por entrada de seleção. |
SWITCH
|
Um conjunto de interruptores. Os usuários podem ativar vários interruptores de uma vez por entrada de seleção. |
DROPDOWN
|
Um menu suspenso. Os usuários podem selecionar um item de menu suspenso para cada entrada de seleção. |
SelectionItem
representação e campos JSON
Representação JSON |
---|
{ "text": string, "value": string, "selected": boolean } |
Campos | |
---|---|
text
|
O texto exibido aos usuários. |
value
|
O valor associado a este item. O cliente deve usar essa informação como valor de entrada do formulário. Para ver detalhes sobre como trabalhar com entradas de formulário, consulte Receber dados de formulário . |
selected
|
Quando
|