2013-07-19 61 views
0

我正在使用Asp.Net網站的註冊頁面。當我們使用服務器端Asp.net內置驗證控件時,它們在客戶端工作(通過生成適當的Java腳本代碼)並提供服務器端保護。所以如果有人繞開了這個Java腳本,那麼這個頁面仍然需要在服務器上進行驗證。目前我在自定義校驗器中使用自己的asp.net C#函數來完成這項工作,但這些功能只能在服務器端工作。我的意思是相同的Java腳本不會自動生成在我的Web表單上。它是Asp.Net的默認行爲還是我缺少任何東西?當我使用asp.net自定義驗證器時,是否必須在自己的編寫客戶端Java腳本?Asp.Net CustomValidator在java腳本中沒有生成相同的函數

我的第二個問題是當我們爲我們的asp.net自定義驗證器編寫函數。它們在頁面提交給服務器時被調用。我可以使用java腳本訪問這樣的函數,以便在頁面提交給服務器之前,它將開始工作。

回答

0

對於你如果附加一些JavaScript來驗證它會隨着網頁上的所有標準.NET驗證着火,所以錯誤寫在雙方的JavaScript自己的驗證碼和C#

自定義驗證可能在回發之前被捕獲

您需要確保已設置ClientValidationFunction方法。

<asp:CustomValidator 
    id="ProgrammaticID" 
    ControlToValidate="programmatic ID of Server Control to Validate" 
    ClientValidationFunction="ClientValidateID" 
    OnServerValidate="ServerValidateID" 
    ErrorMessage="Message to display in ValidationSummary control" 
    Text="Message to display in control" 
    ForeColor="value" 
    BackColor="value" 
    runat="server" > 
</asp:CustomValidator> 
+0

謝謝,這正是我想要的 – user2599269

相關問題