是这样的,在同一个页面上有三块,这三块都有表单有按钮,分别提交不同数据的,现在的问题是:我按钮的causesvalidation设为true,在第一块提交数据的时候,第二块上面的表单发生了验证,要怎么才能解决这问题呢,我每一块都要验证的,并且验证当前块的时候不要验证到其它块的表单

解决方案 »

  1.   

    一般不建议在ASP.NET的网页上面放置多个表单,大多数情况下只要放置一个表单就行了,不同的递交数据请求通过不同的PostBack来实现。至于分区域部分验证,每个按钮都有一个ValidationGroup属性,每个Validator控件也有同样的属性,默认情况下都为空代表验证全部表单控件,你可以手动指定一个Group名字,这样每个按钮只会验证具有相同Group的表单。
      

  2.   

    使用ValidationGroup属性指定要验证的控件和提交按钮到一个验证组内,
    通过服务器端验证控件验证可以达到一起验证的效果。
    如果需要客户端AJAX表现,可以使用ASP.NET AJAX ControlToolkit的ValidationExtender,
    效果还可以,支持分组验证。
    其实最好的用户体验是使用AJAX进行客户端验证(jQuery等)