Asp.net ValidationSummary的问题

Asp.net ValidationSummary的问题,asp.net,validationsummary,Asp.net,Validationsummary,我的asp.net页面上有一个小小的联系人页面。 我有5个可能出错的验证器,我有一个ValidationSummary 问题是,当我点击“SubmitButton”时,所有控件的div应该消失,带有ValidationSummary的div应该出现 但我不知道如何实现这一点,因为在一个普通的按钮/链接按钮上,我将不会有一个在DIV中可见/不可见的回发。通过回发,我将无法获得ValidationSummary的信息 希望我能正确解释,让您理解我:)验证摘要显示/隐藏了自己,这是您想要控制的吗?无论

我的asp.net页面上有一个小小的联系人页面。 我有5个可能出错的验证器,我有一个ValidationSummary

问题是,当我点击“SubmitButton”时,所有控件的div应该消失,带有ValidationSummary的div应该出现

但我不知道如何实现这一点,因为在一个普通的按钮/链接按钮上,我将不会有一个在DIV中可见/不可见的回发。通过回发,我将无法获得ValidationSummary的信息


希望我能正确解释,让您理解我:)

验证摘要显示/隐藏了自己,这是您想要控制的吗?无论如何,你是对的,你必须在客户端JavaScript中这样做

一种方法是手动调用验证方法Page_ClientValidate,而不依赖默认的验证功能

另一种方法是通过执行以下操作替换默认客户端功能:

var fn = Page_ClientValidate;
Page_ClientValidate = function(..) {
   var result = fn(..);

   if (!!result)
      //Valid,
   else
      //Invalid, swap divs

   return result;
}
看看客户端上可用的验证方法,您可以使用此技术覆盖默认实现:


HTH.

ValidationSummary显示发生的错误(如果您有用于验证的客户端脚本,则无需回发)。如果显示ValidationSummary,则会出现错误,那么如果隐藏控件,它们将如何修复?我认为应该使用自定义验证器,如果失败,则隐藏div为什么让人们往返于服务器,而不是让他们在那里修复?作为一个用户,这会让我感到沮丧。此外,某些浏览器不会保存表单控件的状态(后退按钮),因此必须重新键入内容。