2010-05-21 11 views
8

Mam narzędzie do sprawdzania jquery działające, a strona jest bardzo długa, więc chcę, aby strona przewijała się do góry, ponieważ wyświetla błędy na samej górze strony powyżej formularz, czy ktoś wie, gdzie mogę umieścić kod animacji, więc odpala, gdy formularz zawiera błędy?Jak uruchomić zdarzenie po błędzie wtyczki walidatora jquery

+0

Czy możesz opublikować kod, który masz teraz, aby zadzwonić do sprawdzania poprawności? –

Odpowiedz

15

Można użyć invalidHandler option do dokładnego przypadku, gdy chcesz coś takiego:

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

Dziękuję bardzo, że działało idealnie –

+0

Czy istnieje sposób, aby przewinąć do elementu, który był nieprawidłowy w szczególności? Więc jeśli miałeś ogromną formę, a gdzieś w środku był błąd? Na telefonach jest to ważne, ponieważ mogę przewinąć do góry, ale błąd może nie występować w szczególności. –

5

samo jak @Nick zasugerował, ale używać wtyczek po inicjalizacji:

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

}); 

jego samego dzieje się to wewnętrznie po zainicjowaniu wtyczki. Source.

+0

to jest ratownik .. z tym wyjątkiem, że dla mnie jest to 3-krotne zwalnianie na tym samym niepowodzeniu sprawdzania poprawności. – Damon

+0

@Damon nie wiesz, dlaczego tak się dzieje – DontVoteMeDown

+1

@damon prawdopodobnie dlatego, że masz 3 formularze? –

Powiązane problemy