![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 14.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam, czy jest możliwe, aby zrobić w pliku JS coś takiego:
Kod if ($_GET['add_task']){ function add_on() { ... } function add_off() { ,,, } } else { function add_on() { . . . } function add_off() { , , , } } Chodzi mi o to, że przy dodawaniu wpisu do bazy, zwracam sobie w linku np. add_task=1 , jeżeli się wszystko udało. I w zależności od tego czy ktoś właśnie chciał dodać jakiś wpis, czy nie, chciał bym aby funkcje add_on() oraz add_off() się troszeczkę różniły ( dokładnie to ta różnica będzie w ładowaniu tła do przycisku, oraz w display:none / block; ... tylko że oczywiście taki zapis jak powyżej, niestety nie działa. Więc pytanie - czy w pliku js, w ogóle mogę się odwołać do $_GET? Jakieś wyjaśnienia czy też tłumaczenie co ja głupi źle robie - mile widziane (IMG:style_emoticons/default/winksmiley.jpg) Z góry serdecznie dziękuję za pomoc. Ten post edytował qqwwq 20.04.2010, 00:22:04 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Próbowałeś tak prostego sposobu? Tylko ten kod musisz oczywiście osadzić w pliku .php.
Edit: brakło średnika... Ten post edytował luck 20.04.2010, 06:27:45 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 14.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Hmm, działa to, ale połowicznie. Tzn, przedtem jak kombinowałem, to w ogóle przestawało js działać ( na zasadzie kliknięcia na div'a o danym ID coś się działo ), teraz to cały czas działa, ale niestety bez względu czy w linku mam gołe index.php, czy też index.php?add_task=2 itp, działa tylko ta pierwsza zakodowana wersja, czyli if (addTask) ...
Przy okazji, w międzyczasie pomysł trochę ewoulował, ale to chyba nie problem, bo na starej koncepcji też mi niestety nie działa. Kod var addTask = false; <?php if(isset($_GET['add_task'])){ ?> addTask = <?php echo $_GET['add_task'] ?>; <?php }; ?> if (addTask != false){ $(document).ready( function() { $("#header_add").click( function () { $('#content_add').toggle(); } ) .toggle( function() { $("#header_add").css("background","url(\"img/plus_active.png\") left no-repeat"); }, function() { $("#header_add").css("background","url(\"img/plus.png\") left no-repeat"); } ); } ); } if (addTask = false) { $(document).ready( function() { $("#header_add").click( function () { $('#content_add').toggle(); } ) .toggle( function() { $("#header_add").css("background","url(\"img/plus.png\") left no-repeat"); }, function() { $("#header_add").css("background","url(\"img/plus_active.png\") left no-repeat"); } ); } ); } Próbowałem z różnymi warunkami, typu if (addTask), if (!addTask) itp, ale póki co zostawiłem tak. Co ciekawe, jeżeli po pierwszym if damy else - to w ogóle żadna funkcja nie działa - mimo kliknięcia na div'a nic się nie dzieje. Przyszedł mi od razu inny pomysł do głowy. Czy jest możliwe, aby sprawdzenie czy istnieje $_GET['add_task'], odbywało się w pliku index.php, i zapisywało wynik tego do jakiejś zmiennej globalnej, czy coś takiego - aby później z tej zmiennej bezpośrednio mógł plik js korzystać? Chyba bredzę, bo plik js jest ładowany w sekcji head, a zmienną z $_GET['add_task'] bym dopiero w body mógł jakoś tam stworzyć. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 317 Pomógł: 58 Dołączył: 6.11.2005 Ostrzeżenie: (0%) ![]() ![]() |
Zerknij na to:
Skopiuj sobie ten kod i spróbuj odpalić. BTW: "if (addTask = false)" w tym miejscu chyba zjadłeś jeden znak równości. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 52 Pomógł: 0 Dołączył: 14.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Niestety, ale to mi nadal nie działa. Sam kod js mam w oddzielnym pliku - czy to coś zmienia?
Spróbowałem jeszcze jakąś inną funkcję zamieścić w if'ie: if (addTask == false){ } I niestety, w takim wypadku nie działa owa funkcja, jeśli jest != false, to działa, niezależnie czy w linku mam owe add_task=1 itd, czy nie mam. Więc wygląda na to, że mimo zadeklarowania na początku var addTask = false; to wartość zmiennej addTask i tak się zmienia, i zawiera coś innego niż false - oczywiście jeśli dobrze rozumuję. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 20:54 |