在ASP.NET中为我们提供了非常方便的验证控件,例如非空验证,正则表达式验证等。
这些空间在做登录和注册等页面的时候体现出了非常大的优越性,但是今天作者遇到一个奇怪的问题:
在一个页面中如果同时包含验证控件和按钮、Listview等带有事件的控件时,这些事件将无法触发,究其原因:
ASP.NET默认会先去执行验证控件的验证如果有一个没有通过,会将page标记为invalid,此时页面不可用,所有的事件也都不会触发。了解了这个之后,笔者按照验证要求填写了内容后发现其他的事件还是无法执行。。。。这算不算ASP.NET的bug我就不知道了,在一番寻觅之后笔者终于找到了问题的真正答案:
只需要在按钮等控件里面加入:
Causevalidate=“false”
就可以了,哈哈哈哈哈哈~~~