SharePoint列表表单JSON条件格式如何组合两个if条件实现OR逻辑
你尝试的||运算符写法存在语法错误,末尾多了1个多余的右括号,是导致逻辑失效的主要原因。另外也可以使用SharePoint JSON表达式原生支持的Or()函数实现逻辑或,兼容性更稳定。
可用实现方案
- 方案1:修正后的
||运算符写法
=if([$RequestStatus] == 'New Request' || indexOf([$RequestDescription], 'LSTeam') < 0, false, true)
如果需要适配字符串类型的布尔值规则,将false/true替换为'false'/'true'即可。
- 方案2:
Or()函数写法(推荐,兼容性更好)
=if(Or([$RequestStatus] == 'New Request', indexOf([$RequestDescription], 'LSTeam') < 0), false, true)
- 方案3:简化写法(无需嵌套if)
判断条件本身返回布尔值,可直接取反得到显隐结果:
=!Or([$RequestStatus] == 'New Request', indexOf([$RequestDescription], 'LSTeam') < 0)
注意事项
- 表达式中引用的字段名必须和列表字段的内部名称完全一致,大小写敏感;
- 若
RequestDescription为富文本多行字段,建议先改为纯文本模式,避免indexOf匹配到HTML标签导致结果异常。
内容的提问来源于stack exchange,提问作者reub77
相关产品推荐
相关产品推荐

