Xem mẫu

  1. ThS. Trần Thị Bích Hạnh – Nguyễn Đức Huy Lab – 08 – Validation Control 2009 Trong Lab 08 này, hướng dẫn cách sử dụng nhóm Validation Control của ASP.Net trong kiểm tra các dữ liệu input của người dùng website. Trường Đại Học Khoa Học Tự Nhiên Khoa Công Nghệ Thông Tin Bộ môn Công Nghệ Phần Mềm Môn: Công nghệ Web ASP.Net
  2. December 12, 2009 LAB – 08 – VALIDATION CONTROL 1 Mục đích - Yêu cầu 1.1 Mục đích - Biết công dụng của các control trong nhóm Validation Control của ASP.Net. - Áp dụng được các Control này trong bài tập thực hành để kiểm tra việc dữ liệu nhập vào của người dùng. 1.2 Yêu cầu - Áp dụng để thực hiện xây dựng một trang ASPX đăng ký tài khoảng mới. - Bài tập sinh viên lưu lại dưới định dạng sau: o Tạo Website Application có tên là _Lab08_Validation. o Nến Project lại thành một file _Lab08_Validation.ziphoặc _Lab08_Validation.rar. - Thời gian làm bài: 07 ngày. 2 Nội dung cơ bản - Công dụng của nhóm Validattion Control là kiểm tra tính đúng đắng của dữ liệu do client nhập vào trước khi trang ASPX được gửi về Server. - Validation Control có 6 control hỗ trợ cho việc kiểm tra dữ liệu input của người dùng website. Validation Control Sử dụng khi Kiểm tra nếu dữ liệu trong Control khác giá RequiredFieldValidator trị cho trước (mặc định là rỗng) Kiểm tra nếu mục dữ liệu nhập trong CompareValidator Control giống với Control khác hoặc so Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 2
  3. December 12, 2009 LAB – 08 – VALIDATION CONTROL sánh với một giá trị cụ thể Kiểm tra nếu mục dữ liệu nhập trong RangeValidator Control nằm trong khoảng 2 giá trị Kiểm tra nếu mục dữ liệu nhập trong RegularExpressionValidator control thỏa 1 công thức định dạng chỉ định Kiểm tra tính đúng đắn của dữ liệu nhập vào control sử dụng client-side script hoặc CustomValidator a server-side code, hoặc cả 2 Hiển thị tất cả các lỗi kiểm tra xảy ra trong ValidationSummary trang 3 Bài tập thực hành 3.1 Đặc tả yêu cầu - Thiết kế một trang ASPX có chức năng đăng ký thông tin sinh viên. 3.2 Tạo website application - Tạo một project Web Application có cấu truc website như sau: - Thiết kế form có dạng như sau cho trang Default.aspx: Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 3
  4. December 12, 2009 LAB – 08 – VALIDATION CONTROL - Bản control thành phần Id Loại control Mục đích sử dụng Nhận giá trị MSSV TextBox txtStudentID Nhận giá trị Password TextBox txtPassword Nhận giá trị nhập lại TextBox txtRetypePassword Password Nhận giá trị Tên sinh viên TextBox txtName Cho phép lựa chọn giới tính DropDownList ddlSex Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 4
  5. December 12, 2009 LAB – 08 – VALIDATION CONTROL Nhận giá trị ngày tháng năm TextBox txtDateOfBirth sinh Nhận giá trị địa chỉ email TextBox txtEmail Nhận giá trị số điện thoại TextBox txtTelephone Kiểm tra dữ liệu nhập vào Button btnSubmit Chứa giá trị trả về của Button btnClose txtEmail - Thay đổi giá trị property TextMode của txtPassword và txtRetypePassword thành Password. - Trong DropDownList ddlSex sẽ có 3 giá trị là: Choose…, Male và Female. Cách thêm item vào trong ddlSex như sau: o Chọn ddlSex. o Click vào mũi tên phía Trên Phải của ddlSex. Chọn tiếp Edit Item. o Chọn Add và thêm các item vào trong Item list của ddlSex Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 5
  6. December 12, 2009 LAB – 08 – VALIDATION CONTROL o Lưu ý: giá trị của DropDownList không được có dấu “”. Vì khi giá trị này được chọn sẽ bị hiểu nhằm thẻ HTML mới (phát sinh lỗi ngoại lệ). o Đặt propertyPostBackURL cho 2 button: btnSumit và btnClose để PostBack đến các trang khác.  Click vào nut … của PostBackURL để chọn trang ASPX cần PostBack đến  Chọn trang cần PostBack đến Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 6
  7. December 12, 2009 LAB – 08 – VALIDATION CONTROL  Danh sách PostBack của các Button như sau: Button ID PostBackURL ~/SignUpSucceed.aspx btnSubmit ~/Home.aspx btnClose  Do các control Validator thực hiện việc kiểm tra trước khi thực hiện PostBack trang. Nên khi Click vào btnClose thì cần phải vô hiệu hóa chức năng kiểm tra của các control Validator bằng cách set property CausesValidation của btnClose là False. 3.3 Ứng dụng RequiredFieldValidator - RequiredFieldValidator: cho phép kiểm tra dữ liệu nhập vào control được chỉ đính tới bởi property ControlToValidate phải khác với dữ liệu của property Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 7
  8. December 12, 2009 LAB – 08 – VALIDATION CONTROL InitialValue. Mặt định giá trị trong property InitialValue là rỗng, do đó giá trị của Control cần kiểm tra phải khác rỗng (tức cần phải được nhập liệu vào trong control này). - Các property cần thiết lập thông số: o ErrorMessage: Thông báo lỗi (được hiển thị trong ValidationSummary) o Text: Chuỗi hiển thị (ngay thị vị trí control) o ControlToValidate: chỉ định Control được kiểm tra o InitialValue: Giá trị được so sánh (thông thường bỏ trống, không thay đổi giá trị ở Property này). o SetFocusOnError: Tự động forcus đến Control này khi dữ liệu nhập không đúng (nếu có nhiều Validation Control đều set property là này True thì nó sẽ Focus đến Control đầu tiên bị sai). - Bổ sung các RequiredFieldValidator vào trang Default.aspx như hình sau: Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 8
  9. December 12, 2009 LAB – 08 – VALIDATION CONTROL - Thiết lập các giá trị property cho rfvStudentID như sau Property Giá trị Input Student ID ErrorMessage * Text txtStudentID ControlToValidate True SetFocusOnError - Thiết lập các giá trị property cho rfvPassword như sau Property Giá trị Input Password ErrorMessage Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 9
  10. December 12, 2009 LAB – 08 – VALIDATION CONTROL * Text txtPassword ControlToValidate True SetFocusOnError - Thiết lập các giá trị property cho rfvRetypePassword như sau Property Giá trị Input Retype password ErrorMessage * Text txtRetypePassword ControlToValidate True SetFocusOnError - Thiết lập các giá trị property cho rfvName như sau Property Giá trị Input Name ErrorMessage * Text txtName ControlToValidate True SetFocusOnError - Thiết lập các giá trị property cho rfvDateOfBirth như sau Property Giá trị Input Date of birth ErrorMessage * Text txtDateOfBirth ControlToValidate True SetFocusOnError Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 10
  11. December 12, 2009 LAB – 08 – VALIDATION CONTROL - Thiết lập các giá trị property cho rfvEmail như sau Property Giá trị Input Email address ErrorMessage * Text txtEmail ControlToValidate True SetFocusOnError - Thiết lập các giá trị property cho rfvTelephone như sau Property Giá trị Input Telephone number ErrorMessage * Text txtTelephone ControlToValidate True SetFocusOnError - Sau khi deploy lên Browser sẽ nhận được kết quả như sau: Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 11
  12. December 12, 2009 LAB – 08 – VALIDATION CONTROL 3.4 Ứng dụng ValidationSummary - Tổng hợp và hiển thị tất cả các thông báo lỗi của các Validation Control khác. - Đặt tiêu đề của cho danh sách lỗi trong propery HeaderText của ValidationSummary. - Bổ sung control ValidationSummary vào trang Default.aspx. Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 12
  13. December 12, 2009 LAB – 08 – VALIDATION CONTROL - Thiết lập giá trị property cho svErrorList như sau Property Giá trị Error list HeaderText - Deploy lên Browser sẽ nhận được kết quả như sau. Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 13
  14. December 12, 2009 LAB – 08 – VALIDATION CONTROL 3.5 Ứng dụng CompareValidator - CompareValidator: cho phép kiểm tra dữ liệu nhập vào control được chỉ đính tới bởi thuộc tính ControlToValidate được so sánh với các phương thức so sánh được chỉ định trong Operator với dữ liệu được chứa trong Control được chỉ định bởi thuộc tính ControlToCompare hay ValueToCompare. - Các property cần thiết lập thông số: Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 14
  15. December 12, 2009 LAB – 08 – VALIDATION CONTROL ErrorMessage: Thông báo lỗi (được hiển thị trong ValidationSummary) o Text: Chuỗi hiển thị (ngay thị vị trí control). o ControlToValidate: chỉ định Control được kiểm tra. o SetFocusOnError: Tự động forcus đến Control này khi dữ liệu nhập không o đúng (nếu có nhiều Validation Control đều set property là này True thì nó sẽ Focus đến Control đầu tiên bị sai). o ControlToCompare: Control cần lấy giá trị so sánh. o Operator: Phương thức so sánh. Với các giá trị như sau: Equal – bằng, NotEqual – không bằng, GreaterThan – lớn hơn, GreaterThanEqual – lớn hơn hoặc bằng, LessThan – nhỏ hơn, LessThanEqual – nhỏ hơn hoặc bằng, DataTypeCheck – kiểm tra kiểu dữ liệu. o Type: Kiểu dữ liệu o ValueToCompare: Giá trị cần so sánh. - Bổ sung các CompareValidator vào trang Default.aspx như hình sau: Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 15
  16. December 12, 2009 LAB – 08 – VALIDATION CONTROL - Do yêu cầu của txtRetypePassword có dữ liệu nhập vào phải giống với txtPassword (so sánh dữ liệu nhập vào với dữ liệu của một control được chỉ định). Nên thiết lập các giá trị property cho cvRetypePassword như sau Property Giá trị Retype Password do not match ErrorMessage * Text txtPassword ControlToCompare txtRetypePassword ControlToValidate Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 16
  17. December 12, 2009 LAB – 08 – VALIDATION CONTROL Equal Operator String Type True SetFocusOnError - Do bắt người dùng phải chọn giới tính là Male hay là Female. Nhưng mặt định o giá trị được chọn trong ddlSex là Choose… Vậy cần phải so sánh giá trị trong ddlSex khác với giá trị Choose… này (so sánh dữ liệu nhập vào với một giá trị đã được cho trước). Thiết lập các giá trị property cho cvSex như sau Property Giá trị Sex must be Male or Female ErrorMessage * Text ddlSex ControlToValidate NotEqual Operator True SetFocusOnError String Type Choose… ValueToCompare - Deploy lên Browser sẽ nhận được kết quả như sau Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 17
  18. December 12, 2009 LAB – 08 – VALIDATION CONTROL 3.6 Ứng dụng RangeValidator - RangeValidatior: cho phép kiểm tra dữ liệu nhập vào control được chỉ đính tới bởi thuộc tính ControlToValidate phải thuộc về một giá trị nằm trong khoản giữa của 2 thuộc tính MinimumValue và MaximumValue. - Các property cần thiết lập thông số: o ErrorMessage: Thông báo lỗi (được hiển thị trong ValidationSummary) o Text: Chuỗi hiển thị (ngay thị vị trí control). o ControlToValidate: chỉ định Control được kiểm tra. Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 18
  19. December 12, 2009 LAB – 08 – VALIDATION CONTROL o SetFocusOnError: Tự động forcus đến Control này khi dữ liệu nhập không đúng (nếu có nhiều Validation Control đều set property là này True thì nó sẽ Focus đến Control đầu tiên bị sai). o MaximumValue: Giá trị chặn lớn nhất. o MinimumValue: Giá trị chặn dưới nhỏ nhất. o Type: Kiểu dữ liệu - Bổ sung các RangeValidator vào trang Default.aspx như hình sau: Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 19
  20. December 12, 2009 LAB – 08 – VALIDATION CONTROL - Yêu cầu là điều kiện của dữ liệu nhập vào txtDateOfBirth phải này trong khoảng từ ngày 01/01/1950 đến tới điểm hiện tại (thời điểm Page được load lên). - Thiết lập các giá trị property cho rvDateOfBirth như sau: Property Giá trị Date of birth must be mm/dd/yyyy and ErrorMessage between 01/01/1950 and Now * Text txtRetypePassword ControlToValidate True SetFocusOnError Trường Đại Học Khoa Học Tự Nhiên | Công Nghệ Web ASP.Net 20
nguon tai.lieu . vn