validation control驗證控件介紹(原創axa from yunfu)
用戶的輸入存在2類問題: 1.錯誤輸入:例如將郵箱寫成123tom.com,沒加上“@”; 2.惡意輸入:如果設計者沒有對這種輸入做防備,別人就可能利用惡意輸入,在沒有用戶名和密碼的情況下進入你的數據庫。(可以怎樣惡意輸入呢?這裏就不研究了)
ASP.NET 2.0 解決這些問題有幾個思想(結合一起使用):
1.使用Validation controls:使用戶的輸入必需符合你設定的要求,如果不符合Validation controls就會不執行數據操作。 2.使用只能選擇的控件。 3.使用帶參數的SQL語句,而不是將用戶輸入作爲語句的一部分。 4.在數據庫中約束輸入的類型。
什麼是Validation Controls? 在我們註冊用戶時,通常要輸入兩次密碼,如果兩次輸入不同就會給出提示,註冊就不能成功,要重新輸入。在這個例子中Validation Controls就是用來提示和驗證兩次輸入相同的控件。當然他的功能還有很多,大家在實踐中就會體現到。 Validation controls是服務器端的代碼。這就是說用戶提交後,驗證是在服務器端進行的。
試一試1:
在這個實踐中,我將會驗證一個文本框中的輸入是不是空。 1.新建一個aspx頁面。 2.在工具箱(標準控件)中拖一個TextBox和Button控件到頁面。TextBox的ID設爲NameTextBox。Button的Text設爲Submit,並確寶其UseSubmitBehavior屬性爲true。 3.再在工具箱(驗證控件)中拖一個FieldValidator控件到頁面。將其ControlToValidate設爲NameTextBox,Text設爲Please enter your name。
生成的代碼如下: ... <h2>Chapter 13 TIO #1301 Simple Validation</h2> <form id="form1" runat="server"> <div> <asp:TextBox ID="NameTextBox" runat="server"></asp:TextBox><br />
<asp:RequiredFieldValidator ID="NameRequiredValidationcontrol1 "
runat="server"
ControlToValidate="NameTextBox"
Text="Please enter your name">
</asp:RequiredFieldValidator control><br /> <asp:Button ID="Button1" runat="server" Text="Submit" /> </div></form></body></html>
在瀏覽器中運行該頁面,驗證控件開始是不會顯示出來的。當你按下按扭,驗證控件會檢查在ControlToValidate中指定的控件是否符合設定的要求(RequiredFieldValidator控件檢查是不是爲空)。當你在TextBox中什麼都不輸入,按下Button看看如何。
|