Smarty + js przekazywanie tablic |
Smarty + js przekazywanie tablic |
23.07.2013, 22:52:33
Post
#1
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
Hej, mam nadzieje, że dobry dział.
Od paru godzin męcze się z problemem. Przesyłam do tpl tablice i w js chciałbymwyświetlić wartości z tej tablicy: gdy robie:
Wszystko jest ok, ale gdzy zrobię:
wyświetla mi pustke. Zawsze starałem się sam szukać rozwiazania, ale teraz juz nie mam pomysłów i siły. mam nadzieje, że ktoś trzeźwym okiem podrzuci pomysł |
|
|
23.07.2013, 23:38:28
Post
#2
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 25 Dołączył: 10.08.2009 Ostrzeżenie: (0%) |
Nie rozumiem pewnych rzeczy, używasz smartów i odnosisz się do tablicy asocjacyjnej w ten sposób: {$impreza["miejsce"][2]}?
Spróbuj:
albo
Ten post edytował widmo_91 23.07.2013, 23:40:41 |
|
|
23.07.2013, 23:45:51
Post
#3
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
zauważm, że to jest w javascript.
z tym alertem to jest dla testów, który napisałem, ponieważ niechodziło mi wyśweitlanie w pętli. Chodzi o to, że gdy wpisze na sztywno index w tablicy, jest ok, ale gdy użyje zmiennej(czy to z pętli czy na sztywno), wtedy nie pojawia się nic. |
|
|
23.07.2013, 23:50:12
Post
#4
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 25 Dołączył: 10.08.2009 Ostrzeżenie: (0%) |
To skąd pochodzi zmienna $impreza["miejsce"] z javascriptu, smartow czy phpa w skrypcie?
|
|
|
23.07.2013, 23:57:53
Post
#5
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
z php przekazuje, przepraszam mój błąd.
Ale jeszcze raz mówie, tablica przesyłana jest ok, wyświetlana(na sztywno ze wspisaniem indeksu) też jest prawidłowo (czy to jako alert czy jako tekst w html), ale w js jak dam jako pętla, lub jak w 1 poście var i =2 i jako index dam i, to sie nie wyświetla nic |
|
|
24.07.2013, 00:04:35
Post
#6
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 25 Dołączył: 10.08.2009 Ostrzeżenie: (0%) |
|
|
|
24.07.2013, 00:17:36
Post
#7
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
jest błąd skadni js, w ogole nie wyświetla nawet alerta.
|
|
|
24.07.2013, 00:23:12
Post
#8
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 25 Dołączył: 10.08.2009 Ostrzeżenie: (0%) |
Właśnie sobie zdałem sprawę, że to co chcesz zrobić jest nie realne bo można przekazać zmienne z phpa do javascriptu a nie odwrotnie!
Przykładowe rozwiazanie:
Ten post edytował widmo_91 24.07.2013, 00:31:31 |
|
|
24.07.2013, 00:34:13
Post
#9
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
wydaje mi się, że się mylisz.
Ja nie przekazuje zmiennej, tylkoe chce odczytać zmienną, a to różnica. Może mało jasno pisze, postaram się bardziej opisać. w PHP przesyłam tablice do tpl:
w tpl chce na potrzeby testu, wyświetlić za pomocą javascriptu (w alercie) zmienną z pola 3 więc daje :
i jest świetnie, wyświetla to co chce, ale chce zamiast indexu na sztywo, dać jako zmienną :
i w tym wypadku nie działa |
|
|
24.07.2013, 00:45:06
Post
#10
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 25 Dołączył: 10.08.2009 Ostrzeżenie: (0%) |
Bo można przekazać zmienną z phpa do javascriptu:
alert('{/literal}{$impreza["miejsce"][2]}{literal}'); Ale nie można odwrotnie czyli z javascriptu do PHPa: var i = 2; alert('{/literal}{$impreza["miejsce"]['+i+']}{literal}'); To co chcesz zrobić jest nie realne. |
|
|
24.07.2013, 00:48:15
Post
#11
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
tylko tunie chce przekazywać, ale się odwołać do tablicy o zadeklarowanym indeksie, ale możliwe, ze masz racje.
tylko teraz msuze to obejść, ale Twój sposób mi się nie sprawdzi |
|
|
24.07.2013, 00:53:39
Post
#12
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 25 Dołączył: 10.08.2009 Ostrzeżenie: (0%) |
Nie chodzi o przekazywanie a jednak przekazujesz, nieświadomie to nieświadomie ale przekazujesz.
W tym przypadku przekazujesz zmienna phpa $impreza["miejsce"][2] do javascriptu więc wszystko jest OK a w tym:
Próbujesz przekazać zmienną javascriptu i do php a to nie realne bo gdy javascript zacznie sie wykonywać to php już zakończy swoją pracę. Musisz przekazać zmienną z phpa do javascriptu przykładowe rozwiązanie masz na górze:
|
|
|
24.07.2013, 00:56:35
Post
#13
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
ok wydawało mi się to 'oczywiste' ze powinien się odwołać przy zadeklrawowanej zmiennej jako index.
wracając do Twojego sposobu. widziałem gdzieś ten sposób, jednak teraz mam błąd składni przy var impreza = {$do_javascript}; |
|
|
24.07.2013, 00:58:38
Post
#14
|
|
Grupa: Zarejestrowani Postów: 109 Pomógł: 25 Dołączył: 10.08.2009 Ostrzeżenie: (0%) |
Nie wiem jak wygląda twój skrypt ale mogę się domyślać, że może pomóc
{/literal} var impreza = {$do_javascript}; {literal} |
|
|
24.07.2013, 01:02:27
Post
#15
|
|
Grupa: Zarejestrowani Postów: 71 Pomógł: 2 Dołączył: 25.04.2010 Ostrzeżenie: (0%) |
nie w tym miejscu wstawiałem literala, teraz ok, dzięki za pomoc.
+ |
|
|
Wersja Lo-Fi | Aktualny czas: 20.05.2024 - 00:20 |