Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript]Wyślij - tylko gdy nie ma błędu
Forum PHP.pl > Forum > Przedszkole
Trojan
stworzyłem sobie taki formularz który sprawdza poprawność danych za pomocą 2 funkcji sprawdz(); oraz haslo();
  1. <input name="login" type="text" onkeyup="sprawdz('Login', this.value);">
  2. <input name="mail" type="text" onkeyup="sprawdz('Email', this.value);">
  3. <input name="pass" type="password" onkeyup="haslo();">

Jak można sprawdzić czy wszystkie funkcje zwróciły pozytywny wynik ? abym mógł zastosować poniższy kod:
  1. if('funkcje wykonane prawidłowo'){
  2. document.getElementById('submit_td').innerHTML = '<center><input type="submit" value="Stwórz"></center>';
  3. }else{
  4. document.getElementById('submit_td').innerHTML = '<center><input type="submit" value="Stwórz" disabled="disabled"></center>';
  5. }

Obecnie każda funkcja po wykonaniu zapisuje informacje do Diva aby inna funkcja sprawdzająca poprawność całego formularza mogła te dane odczytać. Oczywiście nie jest to profesionalne rozwiązanie i raczej mnie nie zadowala. Istnieje może szansa aby zmienne z jednej funkcji były dostępne w innej questionmark.gif

goglowałem szukałem i jedyne co znalazłem to to: http://www.informatyka.ibt.pl/javascript/zmienne.htm (ale nie działa)
Kod
Zmienne deklarowane za pomocą instrukcji var zawsze są zmiennymi globalnymi, nawet jeśli ich deklaracja odbyła się w ciele funkcji. Jeżeli zmienna jest deklarowana w ciele funkcji a instrukcja var zostaie pominięta - zmienna taka jest traktowana jako lokalna.
bmL
Zadeklaruj zmienne poza funkcją
  1. var zmienna; // itp

A będziesz miał do niej dostęp wewnątrz każdej funkcji. Tylko wewnątrz funkcji nie używaj już instrukcji var.
Na tej stronie to chyba coś nie tak jest napisane, nie wiem może niech inni się wypowiedzą :]
Zmienna deklarowana wewnątrz funkcji czy z instrukcją var czy bez zawsze jest lokalna. IMO.

bmL
golaod
bmL bardzo dobra porada.
Tworzysz var blad = 0;
Sprawdzasz funkcjach czy wszystko ok, jak nie to zamiast jakiego return w funkcji piszesz po prostu blad = 1;
Wtedy jak chcesz zrobic disabled lub nie to sprawdzasz if(blad==1) {disabled} else {bla}
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.