我有一个asp.net文件:
现在我有4个验证器:
验证码验证(保存在 session 中)的
我的问题是订单。
如果用户尝试发送公式器,并且所有4个验证器都不正确,则仅显示RequiredFieldValidator,因为其他3个在服务器端。
用户现在认为“哦,只有一个错误”并进行了纠正。
之后,又发生了另外3个错误,用户对此可能会有些生气-“为什么系统在第一次播放时不告诉我?!”
那么,如何有一个很好的用户解决方案?
有没有一种方法可以同时触发服务器端验证,而客户端验证会失败?
还是有办法在服务器端触发客户端验证?
(注意!我尝试去掉了RequiredFieldValidator,而是执行了第四个CustomValidator。我们这样做了,我有4个CustomValidator,没有Requ-Field-Val。最终,在发送了公式后,没有CustomValidator将被命中= (我不知道为什么。)
最佳答案
一种方法是使用EnableClientScript属性为必需的字段验证器关闭客户端验证。这样您所有的验证都在服务器端进行。
但是更好的方法(如果可能的话)将是对所有客户端验证都使用客户端验证,即使用ClientValidationFunction属性将自定义js验证逻辑与自定义验证器一起使用-有关此类示例,请参见此article。