Tôi đang xác thực biểu mẫu bằng các tính năng xác thực không phô trương mới trong ASP.NET MVC 3.Làm thế nào để thêm một chức năng 'submitHandler' khi sử dụng jQuery Unobtrusive Validation?
Vì vậy, không có mã nào tôi đã viết để thiết lập jQuery xác thực để bắt đầu xác thực biểu mẫu của tôi. Tất cả được thực hiện bằng cách tải thư viện jQuery.validate.unobtrusive.js.
Thật không may, tôi cần phải nhấn mạnh trong 'bạn có chắc không?' hộp thông báo khi biểu mẫu hợp lệ nhưng trước khi gửi. Với jQuery xác nhận bạn sẽ thêm tùy chọn handleSubmit khi khởi tạo như vậy:
$("#my_form").validate({
rules: {
field1: "required",
field1: {email: true },
field2: "required"
},
submitHandler: function(form) {
if(confirm('Are you sure?')) {
form.submit();
}
}
});
Nhưng bạn không cần khởi tạo khi sử dụng thư viện không phô trương.
Bất kỳ ý tưởng nào/cách tôi có thể thêm trình xử lý gửi trong trường hợp đó?
Thx
bất kỳ ai: có tài liệu chính thức nào về điều này từ MS không? –
lưu ý: 'handleSubmit()' chỉ được gọi nếu tất cả các giá trị biểu mẫu xác thực. Nó không được gọi nếu bạn có bất kỳ lỗi nào. Nó hoàn hảo để yêu cầu xác nhận như bạn (vì bạn biết mọi thứ hợp lệ) nhưng nếu bạn muốn xử lý đặc biệt khi có lỗi bạn phải sử dụng 'invalidHandler' - xem câu trả lời của DGreen –
Thay vì đợi cho đến khi nó được khởi tạo, bạn cũng có thể gọi ['jQuery.validator.setDefaults'] (https://jqueryvalidation.org/jQuery.validator.setDefaults/) trực tiếp và bất kỳ intializations biểu mẫu tiếp theo nào sẽ sử dụng các cài đặt đó. Chỉ cần chắc chắn rằng nó chạy trước khi DOM được nạp và jQuery Validator sẽ tự động khởi tạo các biểu mẫu. – KyleMit