Handle pro response vytvoreny v presenteru
- Fooly
- Člen | 26
Zdravím, narazil jsem teď na takový problém,
měl jsem tabulku obsahující možnosti akce s daným řádkem v posledním
sloupečku, a tyto akce byly zajaxované, tudíž se refreshnula tabulka řádek
se smazal a hotovo.
Teď jsem byl ale kvůli velkému množství dat na tabulku vytvořit datagrid
se server datasourcem, vytvořil jsem si šablonu jsonResponse, do které
v presenteru v renderJsonResponse plním data které tam posílá datagrid a
jako response posílám zpět do datagridu, všechno funguje krásně, jen je
problém s těmy tlačítky, v response se posílá pole s daty, které
obsahují i poslední sloupeček s těmi ajaxy, vzhledem k tomu, že jsou
vytvářeny přez metodu link, tak se odkazují na jsonResponse?do=delete ale
já potřebuji aby se odkazovali na tu sablonu ve které je datagrid, to jsem
prozatím vyřešil přez kombinaci basePath a url kterou vím, takže teď to
volá správně, jediný a dost zásadní problém je, že to tlačítko není
zajaxované, i když má class=„ajax“, mohl by mi někdo poradit nějakou
chytrou cestu jak na to? Děkuji!
- iguana007
- Člen | 970
Měl jsem nedávno podobný problém, ale u mne to bylo o něco
komplikovanější a problém byl nakonec jinde, každopádně mi @Lexi
poradil tyto úpravy, třeba ti to pomůže:
https://forum.nette.org/…jax-s-jquery?p=14
- Fooly
- Člen | 26
koukám na to, ale úplně se v tom nevyznám, nicméně si myslím, že řešení musí být jednodušší, vlastně jde o to, že se ten button vyrobí v presenteru v render metodě šablony, která je volána přez ten datagrid, a tak se asi nějak na ten button nenaváže ten ajax, do tohodle ale vůbec nevidím, jak to v nette funguje..
podrobný popis případu:
mám presenter segment ve kterém mám renderJsonResponse, prázdnou template
jsonResponse.latte,
v šablone clients volám response této šablony, a datagrid mi to vykreslí
do tabulky, v renderJsonResponse vytvářím array, do jehíž posledního pole
potřebuju hodit tlačítko na smazání záznamu, tak tam mám zmixovanej link,
jehož konec je /clients?do=remove&clientId=525 a ma class ‚ajax‘ ale
kdyz na nej kliknu tak se mi refreshne stranka