资料验证、HTTP物件与错误处理.ppt

第6章 資料驗證、HTTP物件與錯誤處理 第6章 資料驗證、HTTP物件與錯誤處理 6-1 資料驗證的基礎 6-2 基本的驗證控制項 6-3 進階的驗證控制項 6-4 ASP.NET的HTTP物件 6-5 ASP.NET的錯誤處理 6-1 資料驗證的基礎 6-1-1 ASP.NET驗證控制項 6-1-2 伺服端或客戶端的資料驗證 6-1-1 ASP.NET驗證控制項-說明 資料驗證(Validation)是一件十分重要的工作,因為使用者輸入的資料常常可能發生錯誤,例如:忘了輸入資料、資料範圍錯誤或格式不正確,錯誤資料輕者只是顯示錯誤;重者可能影響整個Web應用程式的執行。 在ASP.NET提供「驗證控制項」(Validation Controls)可以自動建立伺服端或客戶端的資料驗證功能,幫助我們執行Web Form表單的資料驗證。 事實上,驗證控制項單獨存在並沒有意義,我們需要將驗證控制項和輸入或選擇控制項結合起來,以便執行指定控制項的資料驗證。而且,多個驗證控制項可以同時針對一個資料輸入控制項進行資料驗證。 6-1-1 ASP.NET驗證控制項-種類1 ASP.NET提供五種驗證控制項,如下表所示: 6-1-1 ASP.NET驗證控制項-種類2 除了上述驗證控制項外,還提供ValidationSummary控制項,可以顯示整個Web Form表單的驗證錯誤訊息,如下表所示: 6-1-1 ASP.NET驗證控制項-在VWD建立驗證控制項 在VWD開啟「工具箱」視窗後,展開【驗證】區段,即可看到支援的驗證控制項,如下圖所示: 6-1-1 ASP.NET驗證控制項-共通屬性 在ASP.NET的各種驗證控制項都擁有一些共通屬性,常用的共通屬性說明,如下表所示: 6-1-2 伺服端或客戶端的資料驗證- 說明 ASP.NET驗證控制項可以使用EnableClientScript屬性來決定是否自動建立客戶端資料驗證的Jscript程式碼,或只能使用伺服端資料驗證,其說明如下所示: 客戶端資料驗證(Client-Side Validation):尚未送到伺服端前,在客戶端瀏覽程式進行檢查,即使用Jscript程式碼執行資料檢查。 伺服端資料驗證(Server-Side Validation):伺服端資料驗證是在資料送到伺服端後,才進行資料檢查。 6-1-2 伺服端或客戶端的資料驗證- Page物件的IsValid屬性 當Web Form表單擁有驗證控制項時,ASP.NET網頁可以使用Page物件的IsValid屬性,來確認表單是否通過驗證,如下所示: if (Page.IsValid) { ……… } 上述if條件在確認IsValid屬性為true時,就表示通過驗證,接著可以執行Web Form表單的欄位處理。 6-1-2 伺服端或客戶端的資料驗證- Button控制項的CausesValidation屬性 Button控制項的CausesValidation屬性可以決定Web Form表單是否執行驗證控制項的資料驗證,如果屬性值為False,表示當表單送回時,忽略驗證控制項的資料驗證;預設值True是需要執行資料驗證。 6-2 基本的驗證控制項 6-2-1 RequiredFieldValidator控制項 6-2-2 CompareValidator控制項 6-2-3 RangeValidator控制項 6-2-4 ValidationSummary控制項 6-2-1 RequiredFieldValidator控制項-說明 RequiredFieldValidator控制項可以檢查控制項是否忘了輸入資料或沒有選取選項,或不允許輸入指定值。例如:必須輸入使用者名稱,密碼不允許是1234。 控制項除了共通屬性外的相關屬性說明,如下表所示: 6-2-1 RequiredFieldValidator控制項-範例網站 ASP.NET網站:Ch6-2-1 在ASP.NET網頁建立登入表單,使用TextBox控制項輸入使用者名稱和密碼,並且使用RequiredFieldValidator控制項檢查欄位資料,如下圖所示: 6-2-2 CompareValidator控制項-說明 CompareValidator控制項可以比較兩個控制項的值,或與指定常數值進行比較,例如:輸入2次密碼需相同,或購買數量一定大於等於1。控制項除了共通屬性外的相關屬性說明,如下表所示: 6-2-2 CompareValidator控制項-Operator屬性 Operator屬性可以指定比較運算子,如下表所示: 6-2-2 CompareValidator控制項-範例網站 ASP.NET網站:Ch6-2-2 在ASP.NET網頁新增TextBox控制項

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档