刚刚写了个验证控件,public class LengthValidator : BaseValidator
{
int _maximumLength = 0; public int MaximumLength
{
get { return _maximumLength; }
set { _maximumLength = value; }
}
protected override bool EvaluateIsValid()
{
string value = this.GetControlValidationValue(this.ControlToValidate);//获取被验证控件的值
if (value.Length < _maximumLength)
return false;
else
return true;
}
}在前台使用<%@ Register Assembly="btnClick" Namespace="myControls" TagPrefix="cc1" %>
...
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<cc1:LengthValidator ID="LengthValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="*" MaximumLength="6"></cc1:LengthValidator>
<br />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
问题是,当输入小于6位时候,ErrorMessage显示了*,可是为什么页面还在刷新?而且button按钮中的单击事件同样会激发。
{
int _maximumLength = 0; public int MaximumLength
{
get { return _maximumLength; }
set { _maximumLength = value; }
}
protected override bool EvaluateIsValid()
{
string value = this.GetControlValidationValue(this.ControlToValidate);//获取被验证控件的值
if (value.Length < _maximumLength)
return false;
else
return true;
}
}在前台使用<%@ Register Assembly="btnClick" Namespace="myControls" TagPrefix="cc1" %>
...
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<cc1:LengthValidator ID="LengthValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="*" MaximumLength="6"></cc1:LengthValidator>
<br />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
问题是,当输入小于6位时候,ErrorMessage显示了*,可是为什么页面还在刷新?而且button按钮中的单击事件同样会激发。
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货