我和这个论坛中的其他人有同样的问题。我的验证控制没有解雇......而且不确定我哪里出错了。有人可以看看,让我知道我在这里有什么明显的错误...谢谢
我使用以下内容在我的aspx页面中设置了一个客户验证器:
<asp:TextBox ID="EmployeeNumber2TextBox" runat="server"
Text='<%# Bind("EmployeeNumber") %>'Visible='<%# AllowEmployeeNumberEdit() %>' />
<asp:CustomValidator ID="ValidateEmpNumber" runat="server"
onservervalidate="ValidateEmpNumber_ServerValidate"
controltovalidate="EmployeeNumber2TextBox"
ErrorMessage="You Must Enter an Employee Number" Text="*" />
和背后的代码:
protected void ValidateEmpNumber_ServerValidate(object sender, System.Web.UI.WebControls.ServerValidateEventArgs e)
{
int SiteCompanyID = System.Convert.ToInt32(Session["SiteCompanyID"]);
SiteCompanyBLL SiteCompany = new SiteCompanyBLL();
SiteCompanyDAL.SiteCompanyRow ScRow = SiteCompany.GetCompanyByID(SiteCompanyID);
bool AutoGenerate = ScRow.AutoGenNumber; // result returning true or false
if (AutoGenerate == false)
{
if (e.Value.Length == 0)
e.IsValid = false;
else
e.IsValid = false;
}
}
答案 0 :(得分:0)
验证器是否与正在进行提交/回发的控件同步?此外,没有条件允许它true
。
你怎么知道它没有开火?
答案 1 :(得分:0)
您是否尝试使用每个单词大写的第一个字母创建OnServerValidate和ControlToValidate?这些属性可能区分大小写。
我能够在我的系统上运行代码的缩减版本。
您确定您的Web.config设置为编译调试吗?:
&lt; compilation debug =“true”&gt;