在运行时处理或禁用 Sitecore 字段的验证

Handling or disabling Sitecore field's validation during Runtime

我有一个带有正则表达式验证的自定义字段 ^(?!\s*$).+。出于某种原因,这在体验编辑器中不起作用。

如果正在体验编辑器中编辑页面,有没有办法禁用验证?在内容编辑器中它应该是一样的。有没有办法在运行时处理它而无需实际编辑字段值?

我目前正在使用 Sitecore 9。

不幸的是,这是一个错误,作为解决方法,您可以通过在 Sitecore.config 文件中注释掉以下行来简单地将 Sitecore.Shell.Applications.ContentManager.ReturnFieldEditorValues.RegexValidate 处理器从 uiReturnFieldEditorValues 管道中排除:

<processor mode="on" type="Sitecore.Shell.Applications.ContentManager.ReturnFieldEditorValues.RegexValidate" />

这将在 “确定” 按钮上禁用字段验证 Edit 表单并阻止 错误消息 弹出窗口每次都会出现在体验编辑器中并阻止您进行字段编辑。但字段验证仍将由 “保存” 按钮单击触发,并且如果任何字段不存在,将出现 “错误消息” 弹出窗口匹配您的正则表达式。