You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Adaptive Cards如何实现选中Hire选项时显示对应ChoiceSet元素

实现方案

推荐方案:用$when属性直接绑定表单输入值

你之前使用「Only show when」属性时绑定测试数据是使用路径错误,不需要绑定外部测试数据,直接用自适应卡内置的表达式引用同表单内的输入控件值即可,配置逻辑如下:
给id为Suggestion的ChoiceSet元素新增$when属性,属性值直接引用Decision的实时输入值:

{
  "type": "Input.ChoiceSet",
  "id": "Suggestion",
  "label": "后续讨论建议",
  // 保留你原有配置的choices、isMultiSelect、样式等其他属性
  "$when": "${Decision.value == 'Hire'}"
}

这个表达式会自动监听Decision控件的输入值,当选中值等于Hire时自动渲染当前控件,否则隐藏,不需要额外配置动作,是最简单的实现方式。

可选方案:通过ToggleVisibility动作触发显隐

如果你要走动作控制的路径,需要给Decision控件添加onChange事件监听,选中值变化时触发显隐切换,配置示例:

{
  "type": "Input.ChoiceSet",
  "id": "Decision",
  "label": "招聘决策",
  "choices": [
    // 保留你原有选项配置,其中录用选项的value必须等于判断值Hire
    {"title": "录用", "value": "Hire"},
    {"title": "不录用", "value": "Reject"}
  ],
  "onChange": [
    {
      "type": "Action.ToggleVisibility",
      "targetElements": [
        {
          "elementId": "Suggestion",
          "isVisible": "${Decision.value == 'Hire'}"
        }
      ]
    }
  ]
}

使用该方案需要提前取消Suggestion控件的「Initially Visible」默认勾选,设置初始状态为隐藏。

注意事项
  • 确保两个控件的id拼写和你实际配置完全一致,表达式里的Hire要和Decision控件中对应选项的value完全匹配,大小写敏感
  • Power Automate中需要使用「发布适应性卡片并等待响应」动作发送卡片,Teams客户端对1.2及以上版本的自适应卡完全支持上述两种语法,普通静态卡片推送动作不支持实时交互逻辑
  • 如果在Adaptive Card Designer中测试不生效,可以清空示例测试数据,避免测试数据覆盖实时输入值

内容的提问来源于stack exchange,提问作者Juan Puello

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 04:24:00