Avec Cake, les appels en ajax ne se font pas par des urls de fichiers mais par des routes.
Dans le js, tu fait un appel en ajax, mais dans le paramètre url, tu met le nom de ta route :
$.ajax({
url: "ma/route/que/je/veux",
...
...
Après, tu "catch" la route dans ton router et tu envoie l'action au controller que tu veux :
Router::connect(
'ma/route/que/je/veux',
array('controller' => 'monController', 'action' => 'maMethode')
);
Après dans la méthode de ton controller, tu fait le traitement que tu veux et tu lui rends une vue. Si tu veux juste une valeur dans ta vue par exemple, tu ne met qu'un echo $maVariable, que tu set dans ton controller. Ainsi, la vue ne sera pas affiché, mais rendu en réponse Ajax.
Après, le mieux c'est de rendre du json, par habitude c'est ce que je fait. Du coup tu force le header en json dans ta vue.