Nežádoucí reset persistentního parametru
- Jarek92
- Člen | 91
Zdravím,
mám presenter, ve kterém mám dva persistentní parametry. Nicméně při
jejich inicializaci v metodě actionNew se sice vše správně inituje, ovšem
při volání metody actionGetform (v šabloně new.latte z main.js) nemá ani
jeden z parametrů žádnou hodnotu. Viz kód.
Může to být tím, že metodu volám ze souboru main.js? Díky za rady.
- jiri.pudil
- Nette Blogger | 1034
Záleží na tom, jak ji voláš .) ale obecně pokud ty parametry nejsou
v URL, vynulují se. Nette je předává automaticky, pokud odkaz vygeneruješ
přes něj (link
, n:href
), jinak si to musíš
zajistit ručně
- jiri.pudil
- Nette Blogger | 1034
V externím JS nefunguje, ale můžeš si ho do něj předat snadno třeba přes data-* atribut :) nástřel pro jQuery:
- ViPEr*CZ*
- Člen | 821
Chtěl tím říci, že toto je špatně: url: „{link Contract:getform " +
id + "}“,
a mělo by tam třeba být:
url: $(id).data(‚url‘),
To id je parametr funkce loadForm a dostane se tam, někde kde tu funkci
voláte. Pravděpodobně se to zavolá při nějaké akci uživatele a tou
s největší pravděpodobností bude kliknutí do nějakého html
elementu.
Takže s největší pravděpodobností už máte jQeury objekt
představující daný element v nějaké click metodě.
Pak to ještě můžete třeba přepsat na:
url: item.data(‚url‘),
kde se id změnilo za item a v click metodě předáte $(this) jak je
popsáno výše.
- Jarek92
- Člen | 91
Zkusil jsem, nicméně uvedený kód mi vegeneruje adresu:
http://domena.cz/contract/{link Contract:getform 3}
- GEpic
- Člen | 566
Jarek92 napsal(a):
Zkusil jsem, nicméně uvedený kód mi vegeneruje adresu:
http://domena.cz/contract/{link Contract:getform 3}
Tak ho nedávej do uvozovek