Po invalidaci komponenty přichází prázdný JSON

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
knyttl
Člen | 196
+
0
-

Ahoj,

snažím se zajaxovatět jednu svou komponentu. Pokud provedu normálně dotaz v URL, vše proběhne v pořádku. Pokud odkaz zajaxovatím, ve výsledku dostávám tohle:

{„state“:[]}

  • což k výsledku nevede. Vůbec nevím, kde mám hledat chybu, protože to bez ajaxování funguje dokonale. Na základě čeho se generuje tenhle „state“? Proč se tam nepřidá ten daný snippet?

Předpokládám, že by mělo stačit něco takového jako handler události:

<?php
public function handleReset() {
	$this->invalidateControl();
}
?>

Děkuju.

Aurielle
Člen | 1281
+
0
-

Musíš zavolat invalidateControl s parametrem, aby Nette vědělo, že má ten daný snippet překreslit…

Patrik Votoček
Člen | 2221
+
0
-

@ gmvasek: to není tak úplně pravda. Pokud totiž zavoláš $this->invalidateControl(); bez parametru měly by se invalidovat všechny komponenty / snippety.

@ knyttr: na 99.9% bude chyba v zavináčích.

knyttl
Člen | 196
+
0
-

No jo. Byly to zavináče. Díky.