Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Wyślij - tylko gdy nie ma błędu, Co zrobić aby opcja wyślij była aktywna tylko gdy pola są wypełnione
Trojan
post 17.08.2008, 20:48:01
Post #1





Grupa: Zarejestrowani
Postów: 53
Pomógł: 10
Dołączył: 17.01.2008

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
bmL
post 17.08.2008, 23:20:09
Post #2





Grupa: Zarejestrowani
Postów: 301
Pomógł: 25
Dołączył: 15.07.2007
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


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


--------------------
Tutaj miał być jakiś mądry tekst. Miał być... No ale jest głupi tekst.
Go to the top of the page
+Quote Post
golaod
post 18.08.2008, 08:19:17
Post #3





Grupa: Zarejestrowani
Postów: 419
Pomógł: 42
Dołączył: 12.08.2008
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


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}
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.06.2024 - 19:37