首页 > 解决方案 > 在运行时处理或禁用 Sitecore 字段的验证

问题描述

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

如果页面正在体验编辑器中编辑,有没有办法可以禁用验证?在内容编辑器中它应该工作相同。有没有办法在运行时处理它而不实际编辑字段值?

我目前正在使用 Sitecore 9。

标签: validationsitecoresitecore-mvcexperience-editor

解决方案


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

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

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


推荐阅读