Ajax: změna contentu
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Jelzin
- Člen | 3
Ahoj,
potřeboval bych měnit měnit obsah contentu webu pomocí ajaxu. Mám jeden presenter a na něm několik pohledů. Mám odkaz:
<a href="{link stranka1!}" class="ajax">stranka1</a>
a obsluzny handler
<?php
public function handleStranka1(){
$this->renderStranka1();
if (!$this->isAjax()) {
$this->redirect('stranka1');
}
}
?>
…ale vraci to pouze stranku na ktere se jiz nachazim a obnovi ji to. Pokud vypnu javascript tak se to spravne redirectne na stranka1.
Nevite kde by mohl byt problem?
- Jelzin
- Člen | 3
[vyřešeno]
Pro ajaxové začátečníky jako jsem já:
odkaz ponechat v normální podobě
<a href="{link Homepage:stranka1}" class="ajax">
‚do‘ napsat treba natvrdo sem
<script type="text/javascript">
$(function() {
$("a.ajax").live("click", function(event) {
$.get(this.href + '&do=ShowContent');
return false;
});
});
</script>
handler postaci takto
<?php
public function handleShowContent()
{
if (!$this->isAjax())
{
$this->redirect('this');
}
}
?>
Editoval Jelzin (16. 11. 2009 11:34)
- blacksun
- Člen | 177
Jak se to chová, když v url není žádný parametr a vznikne url http://example.com&do=ShowContent ? Vadí chybějící otazník před get parametry či nikoliv?