Volání ajaxu po zavření modalu
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.

- jedlicka
- Člen | 72
Ahoj,
řeším takový problém.
Mám tabulku, která zobrazuje nějaký seznam produktů. Když kliknu na daný produkt, tak se otevře modal okno, kde je možné ve formu změnit data produktu. To je OK. A teď bych potřeboval, aby se po zavření toho modalu načetly pomocí ajaxu nová data a překreslila se tabulka produktů, tedy bez toho aniž bych musel dělat refresh celé stránky (např. redirect).
V šabloně mám:
{block content}
<div id="modal">
...
</div>
...
<div n:snippet="products">
<table>
...
</table>
</div>
<script type="text/javascript">
$(document).ready(function() {
$("#modal").on("hide.bs.modal", function () {
$.nette.ajax({
url: {link refresh!}
});
});
});
</script>
{/block}
V presenteru mám:
public function handleRefresh() {
if ($this->isAjax()) {
$products = $this->database->table(...);
$this->template->products = $products;
$this->redrawControl('products');
}
}
Handle se zavolá, ale vyhodí to chybu 500. Jinde normálně volání ajax
handle používám a bez problému, ale při tom zavření modalu to hodí chybu
500. Ta chyba padne už na tom
$products = $this->database->table(...); nebo jen
samotném $this->redrawControl('products');
Díky za každou radu.