2010-05-21 30 views
8

Tôi có trình xác thực jquery đang chạy và trang rất dài, vì vậy tôi muốn trang cuộn lên đầu vì tôi hiển thị lỗi ở đầu trang phía trên hình thức, không ai biết nơi tôi có thể đặt mã cho các hình ảnh động để nó cháy khi hình thức có lỗi?Cách kích hoạt sự kiện do lỗi trong trình xác thực jquery validator

+0

Bạn có thể đăng mã bạn có ngay bây giờ để gọi xác thực không? –

Trả lời

15

Bạn có thể sử dụng invalidHandler option đối với trường hợp chính xác mà bạn muốn, như thế này:

$("form").validate({ 
    rules: { ... rules here ... } 
    invalidHandler: function(form, validator) { 
    $('html, body').animate({scrollTop: '0px'}, 300);  
    } 
}); 
+0

Cảm ơn bạn rất nhiều, đã làm việc một cách hoàn hảo –

+0

Có cách nào để làm cho nó di chuyển đến phần tử không hợp lệ đặc biệt không? Vì vậy, nếu bạn có một hình thức rất lớn và ở giữa một nơi nào đó có lỗi? Trên điện thoại, điều này rất quan trọng vì tôi có thể cuộn lên đầu nhưng lỗi có thể không có ở đó. –

5

Giống như @Nick gợi ý, nhưng để sử dụng sau khi cắm khởi:

$("form").bind("invalid-form.validate", function() { 

}); 

của nó giống nhau điều đó xảy ra trong nội bộ khi plugin khởi tạo. Source.

+0

đây là một phao cứu sinh .. ngoại trừ việc tôi bắn 3 lần trên cùng một lỗi xác thực. – Damon

+0

@Damon không chắc chắn lý do tại sao điều đó xảy ra – DontVoteMeDown

+1

@damon có lẽ vì bạn có 3 biểu mẫu? –

Các vấn đề liên quan