Sử dụng MVC2, tôi có một ViewModel đơn giản có chứa trường bool được hiển thị trên dạng xem dưới dạng hộp kiểm. Tôi muốn xác thực rằng người dùng đã chọn hộp. Thuộc tính [Bắt buộc] trên ViewModel của tôi dường như không thực hiện thủ thuật. Tôi tin rằng điều này là do trường biểu mẫu hộp kiểm không được chọn không thực sự được truyền lại trong POST, và do đó việc xác thực không chạy trên nó.Làm cách nào để bạn xác thực một hộp kiểm trong ASP.Net MVC 2?
Có cách nào tiêu chuẩn để xử lý hộp kiểm "yêu cầu" xác nhận trong MVC2? hoặc tôi có phải viết trình xác nhận tùy chỉnh cho nó không? Tôi nghi ngờ trình xác thực tùy chỉnh sẽ không được thực hiện hoặc vì lý do được đề cập ở trên. Tôi có bị kẹt kiểm tra nó một cách rõ ràng trong bộ điều khiển của tôi không? Điều đó có vẻ lộn xộn ...
Bất kỳ hướng dẫn nào cũng sẽ được đánh giá cao.
Scott
EDIT cho rõ ràng: Như đã chỉ ra trong ý kiến dưới đây, đây là một loại "đồng ý với các điều khoản của chúng tôi" của hộp kiểm, và do đó "không được chọn" là một câu trả lời hợp lệ, vì vậy tôi thực sự mong để xác thực "được chọn".
Đây có phải là loại "Tôi chấp nhận các điều khoản của thỏa thuận cấp phép" không? Thuộc tính [Bắt buộc] không hoạt động vì hộp kiểm không được chọn là giá trị hợp lệ (sai). –
Vâng, chính xác là như vậy và nếu họ không kiểm tra, chúng tôi sẽ chỉ hiển thị lại cùng một chế độ xem với thông báo xác thực mà bạn phải chấp nhận các điều khoản để tiếp tục. Tôi thấy quan điểm của bạn về giả là "hợp lệ" mặc dù. –
Câu trả lời ở đây có cách làm tốt để làm việc với trình xác thực ứng dụng khách: [http://stackoverflow.com/questions/4934032/mvc3-make-checkbox-required-via-jquery-validate] (http:// stackoverflow.com/questions/4934032/mvc3-make-checkbox-required-via-jquery-validate) –