![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 7 Dołączył: 3.08.2007 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich programistów.
Kilka godzin googlowania nie rozwiązało mojego problemu. Mam następujący kod :
No i wszystko fajnie działa tylko, że nie tak ja ja bym chciał. Powyższa funkcja sprawdz_login() wykonuje się po 2 sekundach, ale tylko wtedy jak input straci fokusa. Ja chcę osiągnąć taki efekt, że user sobie wpisuje literki i jak np. skończy pisać (nowe znaki nie będą się pojawiały przez 1-2s) to wtedy ma się wywołać funkcja sprawdzająca poprawność wpisanych danych. Oczywiście input cały czas ma fokusa i kursor sobie wewnątrz niego normalnie miga umożliwiając userowi wpisanie kolejnych znaków ... Próbowałem zrobić to ze zdarzeniem onKeyPress, onKeyDown, onKeyUp ale wtedy po odczekaniu 2s funkcja wywoływała się tyle razy ile było znaków, a ja chcę żeby się wykonała raz. Jak user uzupełni dane i będzie przerwa we wpisywaniu to znowu ma się automatycznie wywołać itd. Czy takie coś jest w ogóle wykonalne ? Ten post edytował slawek3422 16.03.2010, 15:55:14 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Oczywiście, że jest, tylko jest z tym trochę zabawy , dlatego proponuję spr. login właśnie przy zdarzeniu onchange, ale bez tej zwłoki 2s - tak działa większość takich funkcji,
Jeżeli jednak chcesz zrobić tak jak myślisz musisz w zdarzeniu onKeyCoś (wybierz jakie Ci pasuje) spr co 2 s. czy value tego inputa zmieniło się od ostatniego spr, i jeśli nie to wykonać funkcję spr. loginu. Skorzystaj z funkcji setInterval, tylko nie zapomnij usunąć interwału po przez clearInterval. Pozdrawiam -------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 142 Pomógł: 7 Dołączył: 3.08.2007 Skąd: śląsk Ostrzeżenie: (0%) ![]() ![]() |
Myślałem, że JS ma w sobie zaimplementowane jakieś mechanizmy, których będę mógł w łatwy sposób użyć ... w takim układzie skorzystam ze zdarzenia onBlur ... Dzięki za odpowiedź
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 08:29 |