Adaptive Card 是一种用于在 Microsoft Teams 和其他支持该格式的应用程序中创建丰富交互式卡片的 JSON 格式。它允许开发者设计自定义的用户界面,包括文本、图像、输入字段和按钮等元素。Input.Choiceset
是 Adaptive Card 中的一种输入控件,用于让用户从一组预定义的选项中选择一个或多个值。
Input.Choiceset
有两种类型:
"style": "singleSelect"
):用户只能选择一个选项。"style": "multiSelect"
):用户可以选择多个选项。以下是一个使用 Input.Choiceset
的 Adaptive Card 示例:
{
"type": "AdaptiveCard",
"version": "1.2",
"body": [
{
"type": "TextBlock",
"text": "请选择您喜欢的水果:",
"size": "large",
"weight": "bolder"
},
{
"type": "Input.Choiceset",
"id": "fruitChoice",
"choices": [
{
"title": "苹果",
"value": "apple"
},
{
"title": "香蕉",
"value": "banana"
},
{
"title": "橙子",
"value": "orange"
}
],
"style": "singleSelect"
}
],
"actions": [
{
"type": "Action.Submit",
"title": "提交",
"data": {
"fruit": "${fruitChoice}"
}
}
]
}
当用户点击提交按钮时,Action.Submit
会将 Input.Choiceset
的值包含在提交的数据中。例如,如果用户选择了“苹果”,提交的数据将包含:
{
"fruit": "apple"
}
Input.Choiceset
的值原因:可能是 Input.Choiceset
的 id
与提交数据中的键不匹配。
解决方法:确保 Input.Choiceset
的 id
与 Action.Submit
中的键一致。
{
"type": "Action.Submit",
"title": "提交",
"data": {
"fruit": "${fruitChoice}"
}
}
Input.Choiceset
的值没有正确显示原因:可能是 Input.Choiceset
的 choices
数组格式不正确。
解决方法:确保每个 choice
对象包含 title
和 value
字段。
{
"choices": [
{
"title": "苹果",
"value": "apple"
},
{
"title": "香蕉",
"value": "banana"
},
{
"title": "橙子",
"value": "orange"
}
]
}
通过以上信息,您应该能够理解如何使用 Input.Choiceset
并处理其提交的数据。如果遇到其他问题,请参考官方文档或进一步调试代码。
领取专属 10元无门槛券
手把手带您无忧上云