SharePoint Nintex中根据其他组合框值控制组合框显隐的问题
问题根因
你套用的公式是Power Apps平台的控件语法,和Nintex Forms的规则逻辑、控件取值规则完全不匹配,直接复制使用必然失效。Nintex表单的规则不需要写.Selected.Value这类属性,相等判断也不支持单等号写法,且不需要额外嵌套If(xxx,true,false)这类冗余结构。
分版本实现步骤
根据你使用的Nintex版本选择对应配置方式即可:
新版Nintex for Office 365 / Nintex Workflow Cloud 表单
- 选中
c_GuaranteeType控件,在右侧配置面板找到「规则」板块,新建一条格式化规则(不要选验证规则) - 规则条件根据组合框选择模式填写对应公式:
若c_RequestType是单选组合框,公式为:
若c_RequestType == "value1"c_RequestType开启了多选,公式为:contains(c_RequestType, "value1") - 找到规则配置里的Hide when condition is met开关,根据你的需求调整:如果需要选中value1时显示
c_GuaranteeType,就关闭该开关(条件为真时显示控件);如果需要选中value1时隐藏控件,就开启该开关。 - 保存规则后发布表单即可实时生效,不需要写额外脚本。
本地部署版Nintex 经典表单(适配SharePoint 2016/2019等On-Prem环境)
经典版表单的规则触发逻辑和新版有差异,按以下步骤配置:
- 选中
c_GuaranteeType控件,新增格式化规则,规则类型选择「隐藏」 - 规则条件根据组合框选择模式填写:
单选组合框场景(选中value1时显示控件):
多选组合框场景(选中value1时显示控件):not(equals(c_RequestType, "value1"))
如果你需要选中value1时隐藏控件,直接去掉外层的not(inArray(c_RequestType, "value1"))not()包裹即可。
常见配置踩坑排查
- 控件名称区分大小写:确认公式里的
c_RequestType和控件的内部名称完全一致,不要出现大小写拼写错误 - 值匹配校验:如果组合框选项绑定的是SharePoint列表数据源,公式里匹配的是选项的存储值而非显示文本,不要直接写显示的文本做判断,需要替换为选项对应的实际存储值(比如选项ID、内部编码)
- 不要冗余嵌套:规则本身只需要返回true/false的判断表达式即可,额外套If函数返回布尔值属于多余写法,部分旧版本Nintex会因为语法不兼容识别失败。
内容的提问来源于stack exchange,提问作者Majid Maddah
相关产品推荐
相关产品推荐

