Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS]skrypt działa połowicznie
Forum PHP.pl > Forum > Po stronie przeglądarki
rozny
Witam, mój problem jest następujący - mam kawałek kodu, który odblokowuje lub blokuje element input i zmienia wartość innego elementu input. Przy pierwszym wywołaniu funkcji wszystko jest ok - pierwszy input się odblokowuje, a drugi zmienia wartość, natomiast po kolejnym wywołaniu funkcji nic się nie dzieje. Konsola nie wywala żadnego błędu... Gapię się i gapię w to i nie wiem co jest nie tak, pewnie jakaś pierdoła. Może ktoś rzuci na to świeżym okiem i znajdzie błąd.

Kod:

  1. function unblockInput(input,inputbutton) {
  2. var x=document.getElementById(input);
  3. var z=document.getElementById(inputbutton);
  4. var check;
  5. if (typeof check != 1) {
  6. x.disabled = false;
  7. z.value = 'ZAMKNIJ';
  8. check = 1;
  9. }
  10.  
  11. else {
  12. x.disabled = true;
  13. z.value = 'EDYTUJ';
  14. check = 0;
  15. }
  16.  
  17. }


Będę wdzięczny za pomoc, bo nie mogę ruszyć dalej wink.gif
nospor
Zamiast się gapić i gapić to zrób proste
alert(check);
a wszystko stanie się jasne.... Od gapienia się żaden skrypt się jeszcze nie naprawił...
rozny
Cały czas ma wartość 1, czyli za kolejnym kliknięciem powinien wykonać się kod zawarty w else {} a tak się nie dzieje i nie wiem dlaczego...
nospor
Dokładnie... cały czas ma tę samą wartość, bo to
var check - jest zmienna lokalna....

wywal to a daj poprostu:
check = 0;
i po sprawie

A, i jeszcze ten bez sensowny warunek
if (typeof check != 1)
ma byc poprostu:
if (check != 1)

AAAA, tylko te check = 0; ma być poza funkcją a nie w niej wink.gif
rozny
Dobra, działa smile.gif

Dzięki smile.gif
nospor
Super, a na przyszłość oprócz gapienia się to też coś rób wink.gif Głupie alert() a potrafi coś zdziałać...
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.