我正在使用以下格式的正则表达式构建服务器端验证:
protected void valMessage_ServerValidate(object source, ServerValidateEventArgs args)
{
regex = new Regex(@"^\d+$");
if (regex.Match(args.Value).Success == true)
args.IsValid = true;
else
args.IsValid = false;
}
这是连接到自定义验证器。问题是,即使它失败(即当args.IsValid = false;
时)页面仍然保持正常运行。一旦找到IsValid = false
的控件,它是否应该立即停止?为什么我的代码仍在运行?
答案 0 :(得分:1)
没有看到“页面继续运行”的意思,很难说。假设您有一个事件处理程序响应“提交”按钮的点击,您应该检查事件处理程序中的Page.IsValid。
我经常犯的另一个错误是忘记在按钮和所有验证器上设置ValidationGroup。
答案 1 :(得分:0)
1.使用Page.IsValid()检查Page_Load事件。 2.您可以使用Page.Validate()激活验证。您的服务器端验证是否会触发? 3.如果第2步的答案为否,请验证
答案 2 :(得分:0)