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