如果在制表到字段时触发验证,则需要ExpressiveAnnotations



我有一个模型,它有两个字段使用RequiredIf验证器(需要电话或电子邮件(:

[RequiredIf("Phone == null", ErrorMessage = "Either Phone or Email is required")]
public string Email { get; set; }
[RequiredIf("Email == null", ErrorMessage = "Either Phone or Email is required")]
public string Phone {get; set; }

问题是,在表单上,如果你点击第一个字段(电子邮件(,一旦你点击它,就会触发对Phone的验证,并显示错误消息。如果您开始键入,则错误消息将消失。

所要求的功能是,如果您在电子邮件中进行制表,则在您从两个有条件要求的字段中进行制表之前,验证不会启动,或者,在您单击提交按钮之前,验证也不会启动。

这可能使用RequiredIf注释吗?

<script>
ea.settings.apply({
dependencyTriggers: null // fire validation on submit only
}); 
ea.settings.apply({
dependencyTriggers: 'keyup' // fire on keyup
}); 
</script>

更多信息https://github.com/jwaliszko/ExpressiveAnnotations#how-控制相关字段验证的频率

相关内容

  • 没有找到相关文章

最新更新