Bonjour, je développe un projet utilisant Zend Framework et de l'Ajax.

J'ai dans ma page un menu avec des liens qui mènent à différentes pages où quand je clique dessus, je fais appel à cette fonction javascript:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
function displayPage(nomPage)
{
	$.ajax(
	{
	       url: nomPage,
	       type: 'GET',
	       context: document.corps,
	       data: 
	       {
		   "format" : "html"
	       },
	       error: errorAjax,
	       dataType: "html",
	       success: function(data)
		{
		      document.getElementById('corps').innerHTML = data;
		}
	});
}
nomPage vaut 'index/nomAction'.

Seulement, quand je clique sur mon menu lorsque je suis dans un contrôleur différent de l'index, ca ne me charge rien alors que pourtant, j'ai bien précisé dans tout mes contrôleurs, que les vues pouvait recevoir de l'ajax et j'y ai également créé des fichiers .ajax.phtml pour chaque action.

Voilà un exemple d'action init() dans un de mes contrôleurs:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
// AjaxContext
$this->ajaxContext = $this->_helper->getHelper('AjaxContext');
 
$this->ajaxContext->addActionContext('index', 'html')
                            ->addActionContext('contact', array('html', 'json'))
                            ->initContext();
 
if($this->_request->isXmlHttpRequest())
{
    $this->_helper->layout->disableLayout();
}
Qu'est-ce qu'il manque pour que ça fonctionne?

J'ai pensé à directement mettre le chemin absolu de mon action dans ma fonction Ajax mais ça fait moyen.. :/