điều khiển không chiếm dụng vị trí trên màn hình. | |
EnableClientScript | Có cho phép thực hiện kiểm tra ở phía Client hay không?. Giá trị mặc định là true - có kiểm tra. |
Có thể bạn quan tâm!
- Minh Họa Sử Dụng Điều Khiển Linkbutton
- Minh Họa Sử Dụng Điều Khiển Radiobuttonlist
- Sơ Đồ Kiểm Tra Dữ Liệu Nhập Trên Form Tại Client Và Server
- Giao Diện Trang Regularexpressionvalidatorex .aspx
- Thêm Các Thuộc Tính, Phương Thức Và Sự Kiện Vào Ucc
- Kết Quả Nhận Được Và Code Xử Lý Của Trang Webform1.aspx
Xem toàn bộ 285 trang tài liệu này.
- RequiredFieldValidator: Điều khiển này yêu cầu người dùng phải nhập giá trị vào 1 trường chỉ định trên Form.
Cách sử dụng:
Đưa điều khiển RequiredFieldValidator từ ToolBox (trong phần Validation) vào trong Form và thêm vào cho nó 2 thuộc tính :
- ControlToValidate: chỉ đến điều khiển nhập liệu sẽ được kiểm tra.
- Text (hoặc ErrorMessage): Thông báo lỗi khi kiểm tra có lỗi xảy ra.
Ví dụ: Tạo trang RequiredFieldValidate1.aspx có sử dụng điều khiển kiểm chứng RequiredFieldValidator cho điều khiển nhập TextBox :
<head runat="Server">
<title>Untitled Page</title>
<script runat="Server">
void ValidateBtn_Click(Object sender, EventArgs e)
{
if (Page.IsValid) {
lblOutput.Text = "Required field is filled!";
}
else {
lblOutput.Text = "Required field is empty!";
}
}
</script>
</head>
<body>
<Form id="Form1" runat="Server">
<div>
<h3>RequiredField Validator Example</h3>
<table style="background-color:#eeeeee; padding:10">
<tr valign="top"><td colspan="3">
<asp:Label ID="lblOutput"Text="Fill in the required field below" runat="Server" AssociatedControlID="TextBox1"/><br /></td></tr>
<tr><td colspan="3"><b>Credit Card InFormation</b> </td> </tr>
<tr><td align="right">Card Number:</td>
<td><asp:TextBox id="TextBox1" runat="Server"/></td>
<td><asp:RequiredFieldValidator id="RequiredFieldValidator2" ControlToValidate="TextBox1" Display="Static" ErrorMessage="*" runat="Server"/></td> </tr>
<tr><td></td>
<td> <asp:Button id="Button1" Text="Validate" OnClick="ValidateBtn_Click" runat="Server"/></td>
<td></td></tr>
</table>
</div>
</Form>
</body>
Hình 3.41. Giao diện trang RequiredFieldValidate1.aspx
Khi không nhập dữ liệu cho khung nhập Card Number và click nút Validate, sẽ xuất hiện thông báo lỗi bên cạnh khung nhập (*).
Hình 3.42. Kết quả thực thi RequiredFieldValidate
Thông báo lỗi sẽ không xuất hiện khi nhập dữ liệu trong khung nhập.
- Điều khiển RangeValidator: Điều khiển RangeValidator để kiểm tra giá trị nhập vào có nằm trong một khoảng nhỏ nhất và lớn nhất định trước hay không.
Cách sử dụng:
Đưa điều khiển RangeValidator từ hộp ToolBox vào Form và thiết lập cho nó một số thuộc tính sau:
- ControlToValidate: chỉ đến điều khiển cần kiểm tra
- Text(ErrorMessage): Nội dung thông báo lỗi
- MinimumValue: Giá trị nhỏ nhất thiết lập cho đối tượng
- MaximumValue: Giá trị lớn nhất thiết lập cho đối tượng
Type: Kiểu so sánh, có thể là các giá trị Interger,String, Double, Date và Currency. Ví dụ: Tạo trang RangeValidator.aspx sử dụng điều khiển kiểm tra dữ liệu
RangeValidator kiểm tra phạm vi nhập một số nguyên có giá trị từ 1 đến 10.
<head runat="Server">
<title>RangeValidator Example</title>
<script runat="Server">
void ButtonClick(Object sender, EventArgs e)
{
if (Page.IsValid){ Label1.Text="Page is valid.";
}
else{
Label1.Text="Page is not valid!!";
}
}
</script>
</head>
<body>
<Form id="Form1" runat="Server">
<div>
<h3>RangeValidator Example</h3> Enter a number from 1 to 10:
<br />
<asp:TextBox id="TextBox1" runat="Server"/>
<br />
<asp:RangeValidator id="Range1" ControlToValidate="TextBox1" MinimumValue="1" MaximumValue="10" Type="Integer" EnableClientScript="false"
Text="The value must be from 1 to 10!" runat="Server"/><br /><br />
<asp:Label id="Label1" runat="Server"/><br /><br />
<asp:Button id="Button1” Text="Submit" OnClick="ButtonClick" runat="Server"/>
</div>
</Form>
</body>
Giao diện thiết kế trang RangeValidator.aspx
Hình 3.43. Giao diện trang RangeValidator.aspx
Kết quả thực thi khi click nút lệnh Submit, phương thức xử lý đáp ứng sự kiện OnClick trên nút lệnh như sau:
void ButtonClick(Object sender, EventArgs e)
{
if (Page.IsValid) { Label1.Text="Page is valid.";
}
else {
Label1.Text="Page is not valid!!";
}
}
Hình 3.44. Kết quả thực thi RangeValidator
- Điều khiển CompareValidator: Điều khiển kiểm tra giá trị nhập vào có nằm trong một khoảng nhỏ nhất và lớn nhất định trước hay không.
Cách sử dụng:
Thông qua thuộc tính Operator có thể thực hiện các phép so sánh như: =, <>, >,
>=, <, <= hoặc dùng để kiểm tra kiểu dữ liệu (DataTypeCheck).
Sử dụng điều khiển này để kiểm tra ràng buộc miền giá trị, kiểu dữ liệu, thuộc tính.
Trong trường hợp không nhập dữ liệu, điều khiển sẽ không thực hiện kiểm tra vi phạm.
Các thuộc tính:
- ControlToCompare: Tên điều khiển cần so sánh giá trị. Nếu chọn giá trị của thuộc tính Operator = DataTypeCheck thì không phải xác định giá trị cho thuộc tính này.
- Operator: Qui định phép so sánh, kiểm tra kiểu dữ liệu
+ Equal: = (Đây là giá trị mặc định)
+ GreaterThan: >
+ GreaterThanEqual: >=
+ LessThan: <
+ LessThanEqual: <=
+ NotEqual: <>
+ DataTypeCheck: Kiểm tra kiểu dữ liệu
- Type: Qui định kiểu dữ liệu để kiểm tra hoặc so sánh.
+ String
+ Integer
+ Double
+ Date
+ Currency
- ValueToCompare: Giá trị cần so sánh. Trong trường hợp xác định giá trị của cả 2 thuộc tính ControlToCompare và ValueToCompare thì giá trị của điều khiển được qui định bởi thuộc tính ControlToCompare được ưu tiên dùng để kiểm tra.
Ví dụ: Tạo trang CompareValidatorEx.aspx với nội dung thiết kế sử dụng điều khiển CompareValidator để kiểm chứng việc so sánh bằng (mặc định) giá trị chuỗi nhập trong hai khung nhập String 1(TextBox1) và String 2 (TextBox2) :
<asp:CompareValidator id="Compare1" ControlToValidate="TextBox1" ControlToCompare="TextBox2" EnableClientScript="False" Type="String" runat="Server"/>
Nội dung trang CompareValidatorEx.aspx:
<head runat="Server">
<title>CompareValidator Example</title>
<script runat="Server">
void Button_Click(Object sender, EventArgs e)
{
if (Page.IsValid) {
lblOutput.Text = "Result: Valid!";
}
else {
lblOutput.Text = "Result: Not valid!";
}
}
void Operator_Index_Changed(Object sender, EventArgs e)
{
Compare1.Operator = (ValidationCompareOperator) ListOperator.SelectedIndex; Compare1.Validate();
}
void Type_Index_Changed(Object sender, EventArgs e)
{
Compare1.Type = (ValidationDataType) ListType.SelectedIndex; Compare1.Validate();
}
</script>
</head>
<body>
<Form id="Form1" runat="Server">
<div>
<h3>CompareValidator Example</h3><br />
Enter a value in each textbox. Select a comparison operator<br /> and data type. Click "Validate" to compare values.
<table style="background-color:#eeeeee; padding:10">
<tr valign="top"> <td><h5>String 1:</h5>
<asp:TextBox id="TextBox1" runat="Server"/> </td>
<td> <h5>Comparison Operator:</h5>
<asp:ListBox id="ListOperator" OnSelectedIndexChanged= "Operator_Index_Changed" runat="Server">
<asp:ListItem Selected="True" Value="Equal">Equal</asp:ListItem>
<asp:ListItem Value="NotEqual">NotEqual</asp:ListItem>
<asp:ListItem Value="GreaterThan">GreaterThan</asp:ListItem>
<asp:ListItem Value="GreaterThanEqual">GreaterThanEqual</asp:ListItem>
<asp:ListItem Value="LessThan">LessThan</asp:ListItem>
<asp:ListItem Value="LessThanEqual">LessThanEqual</asp:ListItem>
<asp:ListItem Value="DataTypeCheck">DataTypeCheck</asp:ListItem>
</asp:ListBox></td>
<td> <h5>String 2:</h5><asp:TextBox id="TextBox2" runat="Server"/> <br />
<asp:Button id="Button1" Text="Validate" OnClick="Button_Click" runat="Server"/></td></tr>
<tr> <td colspan="3" align="center"><h5>Data Type:</h5><asp:ListBox id="ListType"
OnSelectedIndexChanged="Type_Index_Changed" runat="Server">
<asp:ListItem Selected="true" Value="String" >String</asp:ListItem>
<asp:ListItem Value="Integer" >Integer</asp:ListItem>
<asp:ListItem Value="Double" >Double</asp:ListItem>
<asp:ListItem Value="Date" >Date</asp:ListItem>
<asp:ListItem Value="Currency" >Currency</asp:ListItem>
</asp:ListBox></td></tr>
</table>
<asp:CompareValidator id="Compare1" ControlToValidate="TextBox1" ControlToCompare="TextBox2" EnableClientScript="False" Type="String" runat="Server"/> <br />
<asp:Label id="lblOutput" Font-Names="verdana" Font-Size="10pt" runat="Server"/>
</div>
</Form>
</body>
Phần mã thực thi đáp ứng sự kiện xãy ra khi thay đổi nội dung trong hai ListBox (sự kiện OnSelectedIndexChanged) và Button (sự kiện OnClick), cho phép cập nhật lại giá trị Operator cho điều khiển CompareValidator.
<script runat="Server">
void Button_Click(Object sender, EventArgs e){ if (Page.IsValid) {
lblOutput.Text = "Result: Valid!";
}
else {
lblOutput.Text = "Result: Not valid!";
}
}
void Operator_Index_Changed(Object sender, EventArgs e){
Compare1.Operator = (ValidationCompareOperator) ListOperator.SelectedIndex;
Compare1.Validate();
}
void Type_Index_Changed(Object sender, EventArgs e){ Compare1.Type = (ValidationDataType) ListType.SelectedIndex; Compare1.Validate();
}
</script>
Giao diện trang CompareValidatorEx.aspx với hai lần thực thi so sánh hai chuỗi với phép toán so sánh bằng (Equal) hay khác (Not Equal):
Hình 3.45. Kết quả thực thi CompareValidator
- Điều khiển RegularExpressionValidator: Điều khiển cho phép so sánh giá trị nhập tại 1 trường nào đó trên Form với một quy tắc định trước có thể sử dụng các biểu thức quy tắc để đưa ra các chuỗi mẫu như là email addresses, Social Security numbers, phone numbers, dates, currency, amounts, hoặc product codes…
Cách sử dụng:
Đưa điều khiển RegularExpressionValidator vào Form của mình và thiết lập cho nó một số thuộc tính sau:
ID: tên của điều khiển
ControlToValidate: trỏ đến điều khiển cần kiểm tra Text(ErrorMessage): nội dung thông báo khi có lỗi
ValidatorExpression: quy định mẫu nhập liệu như là email, số điện thoại…