如果您在母版页中使用验证控件时,禁用js后想要测试服务端是否验证的时候,会发现,服务端的验证失效了。
其实这并不是失效了,而是它的执行顺序出问题了。通常,验证控件的验证逻辑应该先被执行,如果验证成功,才允许提交事件执行,但是在母版页中这个顺序却相反了。这样一来服务端验证就起不到作用了,有个解决办法是在提交事件的前面主动检测一下该页面的验证是否成功,如果不成功,直接返回(return;)。
例如:
在点击按钮事件最前面添一行:
if (!Page.IsValid)
{
return;
}