Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# asp.net验证程序控件验证的客户端事件处理程序_C#_Asp.net_Client Side_Validation - Fatal编程技术网

C# asp.net验证程序控件验证的客户端事件处理程序

C# asp.net验证程序控件验证的客户端事件处理程序,c#,asp.net,client-side,validation,C#,Asp.net,Client Side,Validation,我有一个asp.net表单,其中有一堆可以展开/折叠的部分,通常是折叠的。现在,表单上的大多数控件都附带了RequiredFieldValidator或其他一些验证器。如果用户试图提交未填写必填字段的表单,因为m未提交,但由于大多数节通常是折叠的,用户不会看到验证程序文本(如文本框右侧的感叹号)提示修复错误。 我想做的是针对验证失败的控件,扩展它们的父容器,以便用户可以看到那些失败的控件,但为此,我需要连接一些客户端sode javascript,当客户端验证失败时将执行这些javascript

我有一个asp.net表单,其中有一堆可以展开/折叠的部分,通常是折叠的。现在,表单上的大多数控件都附带了RequiredFieldValidator或其他一些验证器。如果用户试图提交未填写必填字段的表单,因为m未提交,但由于大多数节通常是折叠的,用户不会看到验证程序文本(如文本框右侧的感叹号)提示修复错误。 我想做的是针对验证失败的控件,扩展它们的父容器,以便用户可以看到那些失败的控件,但为此,我需要连接一些客户端sode javascript,当客户端验证失败时将执行这些javascript。我没有任何方法可以做到这一点——验证器自然不会暴露那些“验证事件”以供连接。当然,我可以创建我的自定义验证器,但这意味着完全重写(和复制功能)所有现有的asp.net验证器,这听起来是一项很大的工作

有什么想法吗

提前谢谢你!
安德烈

以下是我如何解决类似问题的。对于添加到accordion的每个验证器,我将验证器id与它所包含的accordion面板一起存储在一个数组中。然后我将此列表传递给客户。我还通过调用Page.ClientScript.RegisterOnSubmitStatement钩住OnSubmit事件。onSubmit期间执行的javascript函数首先检查页面是否有效,如果有效,则退出,如果无效,则在验证程序列表中循环查找无效的验证程序,当找到一个时,它会扩展与该验证程序相关的部分。

下面是我如何解决类似问题的。对于添加到accordion的每个验证器,我将验证器id与它所包含的accordion面板一起存储在一个数组中。然后我将此列表传递给客户。我还通过调用Page.ClientScript.RegisterOnSubmitStatement钩住OnSubmit事件。onSubmit期间执行的javascript函数首先检查页面是否有效,如果有效,则退出,如果无效,则在验证程序列表中循环查找无效的验证程序,当找到一个时,它会扩展与该验证程序相关的部分。

这是一个有趣的想法!事实上,页面在pagevalidators变量中已经有一个包含所有验证器的数组;所以我只需要在数组上循环,对于每个失败的验证器,获取相关的控件并扩展它的父容器。听起来好像对我有用!谢谢这是一个有趣的想法!事实上,页面在pagevalidators变量中已经有一个包含所有验证器的数组;所以我只需要在数组上循环,对于每个失败的验证器,获取相关的控件并扩展它的父容器。听起来好像对我有用!谢谢