selectBox s AJAX – problém s presenterem
- diablos
- Člen | 36
Cao lidi,
vytvořil jsem si formulář s AJAXem. Když ho dám do HomepagePresenteru tak se AJAX provede správně…
<script>
$.get("?do=loadData", {"value": value, "phase": phase}, function(data) {
$('#frmsearchBar-brand').parent().html(data);
});
</script>
A teď příjde ten problém. Když ho dám do jinýho presenteru, tak
nevím, jak nalinkovat handler (?do=loadData) tak, aby se bral z aktivního
presenteru a ne z Homepage. Když jsem zkusil dát
„?presenter=Neco&do=loadData“, tak mě to při provedení AJAXu
přesměruje na novou, úplně prázdnou stránku.
Víte někdo co s tím?
- Ondřej Mirtes
- Člen | 1536
Zkus:
$.get({link loadData!}, {"value": value, "phase": phase}, function(data) {
$('#frmsearchBar-brand').parent().html(data);
});
Volat signály na jiném Presenteru než na tom aktuálním ani nejde.
- diablos
- Člen | 36
Píše to tohle:
missing : after property id
[Break on this error] $.get({link loadData!}, …alue, „phase“: phase},
function(data) {\n
Mno zkoušel jsem dát ten signál loadData na homepage a z homepage se to provedlo. Jinak řečeno provedl se příkaz echo co jsem měl v tom handleru, takže to jde, což je divný.
BTW děkuju za zájem o pomoc.
- diablos
- Člen | 36
Tak to funguje, ale když v tom druhým presenteru (ne v HomepagePresenteru) změním select na nějakou hodnotu načte se úplně bílá stránka a v FireBugu je tohle:
<script>
<br />
<b>Fatal error</b>: Call to a member function setItems() on a non-object in <b>
<title>Fatal Error</title><!-- Call to a member function setItems() on a non-object -->
</script>
Tím setItemem naplním datama druhej selectBox. Tudíš nemůže najít ten požadovanej formulář a asi je to logický, když se zobrazí úplně bílá stránka :-)
Jinak handler vypadá takto:
<script>
$bazBar = $this->template->bazBar;
$bazBar['countyId']->setItems(array("huh" => "bla"));
echo $bazBar['countyId']->getControl();
</script>