![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 182 Pomógł: 0 Dołączył: 24.03.2009 Skąd: Hamburg DE Ostrzeżenie: (0%) ![]() ![]() |
Witam,
mam taki skrypt
oraz
funkcja sprawdz działa poprawie - sprawdza pola input text niestety funkcja checkradio nie chce działać. możecie mi powiedzieć co jest źle? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
@Magic WWW: Kłóciłbym się - szczególnie przy takiej drobnostce jak walidacja formularza.
@agataperz: Robisz dość podstawowy błąd. Kod onsubmit="return sprawdz(this);return checkradio(this)" Funkcja checkradio się nie wykona, dlatego że zostanie zwrócona wartość funkcji sprawdź i ta część kody zostanie zakończona. Przykład: Kod <span onclick="return true; alert(123);">KLIK</span> Rozwiązaniem problemu jest stworzenie nowej funkcji "sprawdź wszystko" lub zapisanie tego w takiej formie: Kod return (sprawdz(this) && checkradio(this)) Lecimy dalej... Jak w funkcji jako parametr przekazujesz "this": checkradio(this) to w funkcji nie musisz już korzystać z document.formularz.length, a z przekazanej referencji:
W ogóle ta Twoja funkcja mi się nie podoba... Poczytaj o getElementsByTagName, a następnie napisz taki kod(ja przedstawiłem, go w pseudokodzie): Kod function sprawdz( formularz ){ //sprawdza czy któryś z inputów został zaznaczony - prawda jeżeli został, fałsz jeżeli nie został zmienna INPUT = formularz.pobierz_wszystkie_inputy; PĘTLA po INPUT{ JEŻELI( INPUT.type == radio i INPUT.checked ) ZWRÓĆ prawdę } ZWRÓĆ fałsz } Powodzenia |
|
|
![]() ![]() |
![]() |
Aktualny czas: 8.10.2025 - 22:12 |