輸入.選擇集

備註

你正在建立由 Adaptive Cards 驅動的 Copilot、Teams 或 Outlook 應用場景嗎? 造訪 Adaptive Card Documentation Hub,這個全新的一站式平台,滿足您所有 Adaptive Card 的需求! 它擁有你所需的所有資源,包括許多新功能的完整文件,例如響應式版面、圖示徽章旋轉木馬圖表等等!

關於無障礙的重要說明: 在結構的 1.3 版本中,我們在 Inputs 上引入 了標籤 屬性以提升可及性。 如果你目標的 主機應用程式 支援 v1.3,建議使用 label 而非 TextBlock ,如下方範例所示。 當大多數 Host 應用程式更新到最新版本後,我們會相應更新樣本。

輸入選擇集

允許使用者輸入選擇。

Input.ChoiceSet 屬性

房產 類型 為必填項目 Description 版本
type "Input.ChoiceSet" Yes 必須是 "Input.ChoiceSet" 1.0
識別碼 string Yes 該值的唯一識別碼。 用於在執行提交動作時識別收集到的輸入。 1.0
選項 Input.Choice[] Choice 選項。 1.0
choices.data Data.Query 允許在使用者輸入輸入欄位時,動態從機器人擷取選項,顯示為下拉選單中的建議。 1.6
isMultiSelect boolean 允許選取多個選項。 1.0
style ChoiceInputStyle 1.0
value string 應該選擇的初始選擇(或一組選擇)。 多選時,指定一串逗號分隔的數值。 1.0
預留位置 string 描述所需輸入。 只有在未做出選擇時才可見,stylecompactisMultiSelectfalse 1.0
封裝 boolean 如果 true,允許文字進行換行。 否則文字會被剪裁。 1.2

繼承屬性

房產 類型 為必填項目 Description 版本
errorMessage string 用戶輸入無效時顯示的錯誤訊息 1.3
是必填 boolean 是否需要這樣的輸入 1.3
標籤 string 此輸入的標籤 1.3
標籤位置 InputLabelPosition [僅支援 JAVASCRIPT SDK]決定標籤的位置。 它可以接受「inline」和「above」的屬性值。 預設情況下,當標籤位置未指定時,標籤會放在「上方」。 1.6
labelWidth stringnumber [僅支援 JAVASCRIPT SDK] 當標籤與輸入字段對齊時,它會以百分比(例如 40)或具體像素寬度(例如「40px」)來決定標籤的寬度。 當標籤顯示在輸入上方時,labelWidth 會被忽略。 1.6
輸入風格 InputStyle [僅支援 JAVASCRIPT SDK]輸入欄位的樣式提示。 允許輸入欄位顯示為唯讀,但當使用者點擊或聚焦該欄位時,可以更新這些欄位。 1.6
後備方案 ElementFallbackOption 描述遇到未知元素或無法滿足該元素或任何孩子需求時該怎麼做。 1.2
height BlockElementHeight 指定元素的高度。 1.1
separator boolean true時,在元素頂部畫一條分隔線。 1.0
間距 Spacing 控制此元素與前一個元素之間的間距。 1.0
是可見的 boolean 不,預設: true false,則該項目將從視覺樹中移除。 1.2
要求 Dictionary<string> 一系列鍵值對,表示該項目所需的功能及其相應的最低版本。 當功能缺失或版本不足時,會觸發備援。 1.2

Example

範例 1:示範 ChoiceSet 樣式與多重選擇

JSON 最適化卡片
json { "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "type": "AdaptiveCard", "version": "1.3", "body": [ { "type": "Input.ChoiceSet", "id": "myColor", "style": "compact", "label": "What color do you want? (isMultiSelect:false, style:compact)", "isMultiSelect": false, "value": "1", "choices": [ { "title": "Red", "value": "1" }, { "title": "Green", "value": "2" }, { "title": "Blue", "value": "3" } ] }, { "type": "Input.ChoiceSet", "id": "myColor2", "style": "expanded", "label": "What color do you want? (isMultiSelect:false, style:expanded)", "isMultiSelect": false, "value": "1", "choices": [ { "title": "Red", "value": "1" }, { "title": "Green", "value": "2" }, { "title": "Blue", "value": "3" } ] }, { "type": "Input.ChoiceSet", "id": "myColor3", "isMultiSelect": true, "value": "1,3", "style": "compact", "label": "What colors do you want? (isMultiSelect:true, style:compact)", "choices": [ { "title": "Red", "value": "1" }, { "title": "Green", "value": "2" }, { "title": "Blue", "value": "3" } ] }, { "type": "Input.ChoiceSet", "id": "myColor4", "isMultiSelect": true, "value": "1", "style": "expanded", "label": "What colors do you want? (isMultiSelect:true, style:expanded)", "choices": [ { "title": "Red", "value": "1" }, { "title": "Green", "value": "2" }, { "title": "Blue", "value": "3" } ] } ], "actions": [ { "type": "Action.Submit", "title": "OK" } ] }

屬性

選擇(版本 1.0)

Choice 選項。

  • 類型Input.Choice[]
  • 必要條件:不
  • 允許的值
    • Input.Choice

choices.data(版本 1.6)

允許在使用者輸入輸入欄位時,動態從機器人擷取選項,顯示為下拉選單中的建議。

  • 類型Data.Query
  • 版本 :1.6
  • 必要條件:不
  • 允許的值
    • Data.Query

isMultiSelect(版本 1.0)

允許選取多個選項。

  • 類型boolean
  • 必要條件:不

風格(版本 1.0)

  • 類型ChoiceInputStyle
  • 必要條件:不
  • 允許的值
    • "compact"
    • "expanded"
    • "filtered":於版本 1.5 新增。 允許使用者對選擇集中的選項進行篩選。

值(版本 1.0)

應該選擇的初始選擇(或一組選擇)。 多選時,指定一串逗號分隔的數值。

  • 類型string
  • 必要條件:不

佔位符(版本 1.0)

描述所需輸入。 當未做出選擇時,只顯示stylecompactisMultiSelectfalse

  • 類型string
  • 必要條件:不
JSON 最適化卡片
json { "type": "AdaptiveCard", "$schema": "http://adaptivecards.io/schemas/adaptive-card.json", "version": "1.3", "body": [ { "type": "Input.ChoiceSet", "id": "CompactSelectVal", "label": "What color do you want? (compact)", "style": "compact", "isRequired": true, "errorMessage": "This is a required input", "placeholder": "Please choose", "choices": [ { "title": "Red", "value": "1" }, { "title": "Green", "value": "2" }, { "title": "Blue", "value": "3" } ] } ], "actions": [ { "type": "Action.Submit", "title": "OK" } ] }

wrap(版本 1.2)

如果 true,允許文字進行換行。 否則文字會被剪裁。

  • 類型boolean
  • 版本 :1.2
  • 必要條件:不

識別碼(版本 1.0)

該值的唯一識別碼。 用於在執行提交動作時識別收集到的輸入。

  • 類型string
  • 必修條件:是

errorMessage(版本 1.3)

用戶輸入無效時顯示的錯誤訊息

  • 類型string
  • 版本 :1.3
  • 必要條件:不

isRequired(版本 1.3)

是否需要這樣的輸入

  • 類型boolean
  • 版本 :1.3
  • 必要條件:不

標籤(版本 1.3)

此輸入的標籤

  • 類型string
  • 版本 :1.3
  • 必要條件:不

labelPosition(版本 1.6)

[僅支援 JAVASCRIPT SDK]決定標籤的位置。 它可以接受「行內」和「上方」的設定。 預設情況下,當標籤位置未指定時,標籤會放在「上方」。

  • 類型InputLabelPosition
  • 版本 :1.6
  • 必要條件:不
  • 允許的值
    • "inline"
    • "above"

labelWidth(版本 1.6)

[僅支援 JAVASCRIPT SDK] 決定標籤的寬度,當標籤與輸入框內聯放置時,可以設定為百分比(例如 40%)或特定像素寬度(如 '40px')。 labelWidth 當標籤顯示在輸入上方時,會被忽略。

  • 類型stringnumber
  • 版本 :1.6
  • 必要條件:不

inputStyle(版本 1.6)

[僅支援 JAVASCRIPT SDK]輸入欄位的樣式提示。 允許輸入欄位顯示為唯讀,但當使用者點擊或聚焦該欄位時,可以更新這些欄位。

  • 類型InputStyle
  • 版本 :1.6
  • 必要條件:不
  • 允許的值
    • "revealOnHover"
    • "default"

備用(版本 1.2)

描述遇到未知元素或無法滿足該元素或任何孩子需求時該怎麼做。

  • 類型ElementFallbackOption
  • 版本 :1.2
  • 必要條件:不
  • 允許的值
    • ActionSet
    • ColumnSet
    • Container
    • FactSet
    • Image
    • ImageSet
    • Input.ChoiceSet
    • Input.Date
    • Input.Number
    • Input.Text
    • Input.Time
    • Input.Toggle
    • Media
    • RichTextBlock
    • Table
    • TextBlock
    • "drop":當遇到未知元素時,此元素會立即被丟棄。 未知元素無法上升到更高層級。

高度(版本 1.1)

指定元素的高度。

  • 類型BlockElementHeight
  • 版本 :1.1
  • 必要條件:不
  • 允許的值
    • "auto"容器的高度將由其內容物的高度決定。
    • "stretch":容器會將其高度拉伸至母容器剩餘的可用高度。

分離器(版本 1.0)

true時,在元素頂部畫一條分隔線。

  • 類型boolean
  • 必要條件:不

間距(版本 1.0)

控制此元素與前一個元素之間的間距。

  • 類型Spacing
  • 必要條件:不
  • 允許的值
    • "default"
    • "none"
    • "small"
    • "medium"
    • "large"
    • "extraLarge"
    • "padding"

isVisible(版本 1.2)

false,則該項目將從視覺樹中移除。

  • 類型boolean
  • 版本 :1.2
  • 必修條件:否,預設: true

需要(版本 1.2)

一系列鍵值對,表示該項目所需的功能及其相應的最低版本。 當功能缺失或版本不足時,會觸發備援。

  • 類型Dictionary<string>
  • 版本 :1.2
  • 必要條件:不