如何在不提交的情况下触发 ASP.NET 客户端验证?

emz*_*ero 5 asp.net webforms lost-focus client-side-validation

我在 ASP.NET (WebForms, NOT MVC) 中有一个网站,它有一个分为几张幻灯片的调查表格。每张幻灯片都有一个下一张按钮,显然可以转换(客户端,不是回发或远程请求)到下一张幻灯片。

在每张幻灯片中,我都有几个带有相关验证器的 ASP.NET 控件。我希望在单击下一步按钮时触发此验证器(或者当每个输入失去焦点时?)。

我记得 ASP.NET 在失去焦点时进行客户端验证,但也许我错了......(我现在已经退出 ASP.NET 开发大约 3 年了,所以我不记得了)

谢谢

更新:

当相关控件失去焦点时,最好让 ASP.NET 触发每个验证器。我记得 ASP.NET 这样做(或者我在做梦?=P)

Eri*_*ric 3

首先,您需要确保所有验证器都具有使用验证器上的“TargetControlID”属性指定的目标控件。

然后,您可以为每页设置一个验证组,并在下一个按钮和控件本身中指定组名称。

如果您使用正则表达式验证器,您可以从此网站选择它们

验证客户端 如果您使用自定义验证器,则可以创建一个客户端函数,并使用 ClientValidationFunction 属性并通过在自定义验证器上设置 EnableclientScript = "true" 在自定义验证器上指定它。

只需确保您的客户端函数具有 sender 和 args 参数即可。