Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery][Twig]Czy mogę wewnątrz funkcji append() wrzucać twig i zmienną javascript?
Forum PHP.pl > Forum > Przedszkole
porzeczki
jak mam wstawić zmienną javascript razem z twig wewnątrz jQuery append().
  1. $.ajax({
  2. type: "GET",
  3. url: Routing.generate('index', {page}),
  4. success: function (data) {
  5. console.log(data.data[0].isbn);// jest oczekiwana wartość
  6. $('#foo').append("<a href=\"{{ path('ksiazka_show', { 'id': data.data[0].isbn }) }}\">");//line 83

"Variable "data" does not exist in AppBundle:Default:index.html.twig at line 83."
nospor
Zanim zaczniesz zabawy z Symfony i z twigiem wypadaloby poznac pare podstawowych rzeczy:

twig to nic innego jak php. A php jak powinienies wiedziec odpala sie po stronie serwera a js odpala sie u klienta/przegladarki. To sa dwa rozne procesy. Wpierw odpalany jest php, ktory zazwyczaj generuje kod js i dopiero potem jak klient dostanie ten kod js to kod ten jest odpalany.
Nie mozesz wiec zmiennej js wstawic do kodu php, gdyz kod php wykonal sie juz dawno przed wykonaniem kodu js.

czyli w twoim przypadku masz wpierw do js zapisac url z falszywym ID

Kod
var url = "{{ path('ksiazka_show', { 'id': 'ID' }) }


A potem gdy juz dostaniesz swoja zmienna to podmienic to id na warosc ze zmiennej
Kod
url = url.replace('ID', data.data[0].isbn);

Cos w ten desen, pisane z palca, moga byc bledy. Chcialem ci pokazac glownie idee
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.