验证控件的问题,导致Page_error
在网上有一个微软的CompareValidator控件的实例,主要是把EnableClientScript设置为false,来进行服务器端验证。我参考了一下,写了如下的代码,但它运行起来却总是会爆出Page_Error。
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="TextBox1"
Display="None" Operator="DataTypeCheck"
SetFocusOnError="True" Type="Date" EnableClientScript="False"></asp:CompareValidator>
..........................................
protected void Page_Error(object sender, EventArgs e)
{
Response.Write("Error page.");
Server.ClearError();
}
protected void Button1_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
Label1.Text = "Result: Valid!";
}
else
{
Label1.Text = "Result: Not valid!";
}
}
这个代码很简单,但为什么每次都去执行Page_Error? 我需要CompareValidator1来验证日期格式,但在输入了一个错误的字符串之后,整个页面却只显示一个错误信息“Error Page”,而不能把Label1在原来页面中显示出来,这让我很费解,如果Page.IsValid=false最终会导致Page_Error事件的话,难道是微软的例子有问题?麻烦各位帮我看一下,谢谢。
注:已经设置了AutoEventWireup="true"
--------------------编程问答-------------------- 哪位高手能指点一下吗?多谢 --------------------编程问答-------------------- 再顶一下。
补充:.NET技术 , C#