0
客户端验证正常工作。我禁用了客户端,看看它是否也适用于服务器端,但失败。即使输入文本无效,编译器也会到达'SaveData'。 没有更新面板。 我应该如何解决这个问题。服务器端验证不起作用 - ASP.NET
ASPX:
<asp:TextBox ID="txtDept" runat="server" pattern="[a-z A-Z]*"></asp:TextBox>
<asp:RegularExpressionValidator
ID="revDept"
runat="server"
ValidationExpression="^[a-zA-Z\s]{1,50}$"
ControlToValidate="txtDept"
Display="Dynamic"
ErrorMessage="Only alphabets and spaces are allowed."
EnableClientScript="false">
</asp:RegularExpressionValidator>
C#:
protected void btnSubmit_Click(object sender, EventArgs e)
{
if (Page.IsValid)
{
SaveData();
}
}
在服务器端显式调用Page.Validate()。 – 2014-09-29 06:32:13
参考: http://stackoverflow.com/questions/13762467/how-does-page-isvalid-work?answertab=votes#tab-top – 2014-09-29 06:34:55
此外,尝试从文本框中删除模式。你可能遇到与两者的模式冲突(并且它们不是等价的) – 2014-09-29 06:36:26