【发布时间】:2011-07-04 10:31:35
【问题描述】:
我有用于验证 texbox 的必填字段验证器和自定义验证器。必填字段验证器完美触发。我无法让自定义验证器正常触发?
<asp:TextBox ID="txtPRI" runat="server" Width="295" /><br />
<asp:RequiredFieldValidator display="Dynamic" CssClass="leftAlign" SetFocusOnError="true" runat="server" controltovalidate="txtPRI" errormessage="Please enter your PRI" />
<asp:CustomValidator runat="server" id="cusCustom" controltovalidate="txtPRI" onservervalidate="cusCustom_ServerValidate" Enabled="true" ValidateEmptyText="true" display="Dynamic" CssClass="leftAlign" SetFocusOnError="true" errormessage="The text must be exactly 8 characters long!" />
后面的代码
protected void cusCustom_ServerValidate(object sender, ServerValidateEventArgs e)
{
Response.Write("firing - test");
Response.End();
if (e.Value.Length == 8)
e.IsValid = true;
else
e.IsValid = false;
}
【问题讨论】:
-
我总是在使用服务器端验证器时遇到问题,我总是选择客户端:(
-
我也很想知道这个问题的答案。
-
方法是否触发了?您是否将其设置为验证器的 OnServerValidate 事件?你能告诉我们验证器的 ASPX 标签吗?
-
不,根本不触发,标签在那里?
-
@jonezy:小心客户端验证器——它们很容易被欺骗和提交恶意数据。始终确保以一种或另一种方式验证服务器上的输入。
标签: c# asp.net validation customvalidator