Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Zmienne globalne - chyba tutaj tkwi problem
matewka
post
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 14.11.2009

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


Witam wszystkich serdecznie.
Od jakiegoś czasu głowię się z problemem, który podejrzewam, że dotyczy zmiennych globalnych. Mam taki skrypt:
  1. var upjoint = new array(0,0,0,0,0,0,0);
  2. var downjoint = new array(0,0,0,0,0,0,0);
  3.  
  4. function zaznaczGodz(r,c) {
  5. c_int = parseInt(c);
  6. if(upjoint[c_int]==0) {
  7. $('#r-'+r+'-c-'+c).attr('bgcolor', '#f00');
  8. upjoint[c_int] = 1;
  9. }
  10. else {
  11. ...
  12. }
  13. }

Funkcja zaznaczGodz() jest wywoływana z atrybutu 'onclick' każdej z 70 komórek w pewnej tabeli. Skrypt po prostu nie działa (nie zmienia koloru). Podejrzewam, że problem tkwi gdzieś w zmiennej upjoint, bo próbowałem po kolei usuwać poszczególne elementy funkcji i, jeśli np. w warunku IF'a wpiszę samo 'c_int!=0' to funkcja działa. Co robić?

Ten post edytował matewka 15.05.2011, 21:48:34
Go to the top of the page
+Quote Post
melkorm
post
Post #2





Grupa: Zarejestrowani
Postów: 1 366
Pomógł: 261
Dołączył: 23.09.2008
Skąd: Bydgoszcz

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


java script:

1. Zamieść cały kod - a najlepiej go nam udostępnij online,
2. FireBug i jego konsola błędów,
3. Co chcesz uzyskać,
4. Patrz punkt 1.



--------------------
Go to the top of the page
+Quote Post
matewka
post
Post #3





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 14.11.2009

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


Ad.1. Cały kod to tylko prosta tabelka 7x10 + JS, który zamieściłem powyżej. Ale proszę bardzo wink.gif LINK
Ad.2. Używam Chrome, który ma wbudowane takie coś, jak FireBug.
Ad.3. Tworzę tabelkę dla lekarzy przedstawiającą dni tygodnia (w kolumnach) i godziny (w wierszach). Chcę, żeby lekarze mogli sobie ustawiać godziny pracy za pomocą klikania w konkretną godzinę - od której do której chcą pracować. Potrzebuję do tego globalnych tablic, które będą miały ilość pól tyle, co "c" (cell), a wartość danego pola tyle, co "r" (row). Skrypt, który oglądasz jest bardzo uproszczony. Konkretny mam w pracy, ale tam będę dopiero jutro... Jednak nie ma to żadnego znaczenia, bo ten tutaj też nie działa.
Ad.4. Patrz Ad.1.

Ten post edytował matewka 15.05.2011, 22:06:30
Go to the top of the page
+Quote Post
Kemsan
post
Post #4





Grupa: Zarejestrowani
Postów: 33
Pomógł: 6
Dołączył: 30.06.2008
Skąd: Bytom

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


"$ is not defined [Wstrzymuj na tym błędzie] $('#r-'+r+'-c-'+c).attr('bgcolor', '#f00'); " Popraw przykład, bo ściąga jQuery z localhost'a
Go to the top of the page
+Quote Post
matewka
post
Post #5





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 14.11.2009

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


już mniejsza z tym. Doszedłem, o co chodziło. debuger pokazał mi, że nie mogę zdefiniować tablicy w ten sposób:
  1. var upjoint = new array(0,0,0,0,0,0,0);

Przetrzepałem gugla i znalazłem takie coś:
  1. var upjoint = [0,0,0,0,0,0,0];

Działa! smile.gif
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 Aktualny czas: 20.08.2025 - 08:28