[英]Custom validator to compare
为了进行练习,我必须比较两个文本框是否包含带有自定义验证器的相同文本(做一个与comparevalidator相同的事情),但是我不能为此使用比较验证器。 我必须为此使用自定义验证器。
它必须比较TextBox1和TextBox2,如果它们不包含相同的值(文本),则必须给出错误消息:不相同的值!
我该如何解决?
这是我到目前为止的内容:
标记:
<asp:TextBox ID="TextBox2" runat="server" />
<asp:TextBox ID="TextBox3" runat="server" />
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="Not the same value !" ControlToValidate="TextBox2" onservervalidate="CustomValidator1_ServerValidate" />
这就是我试图在代码隐藏中执行的操作:
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
if (TextBox2.ToString() != TextBox3.ToString())
{
Label1.Text = "Not the same values";
// don't exactly know what to do in here in order to put it in the error message
}
}
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
if (TextBox2.Text != TextBox3.Text)
{
Label1.Text = "Not the same values";
args.IsValid = false;
}
}
请参考此讨论。有关您的问题的讨论,它有一个解决方案
更新:
尝试这个 :
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" Text="Button" />
<asp:CustomValidator ID="CustomValidator1" runat="server"
ErrorMessage="Not the same value !" ControlToValidate="TextBox2" onservervalidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
if (TextBox2.Text == TextBox3.Text)
{
args.IsValid = true;
}
else
{
args.IsValid = false;
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.