7.1 AJAX
Der AjaxHelper benutzt die populären Bibliotheken Prototype und script.aculo.us für Ajax und clientseitige Effekte. Um diesen Helfer benutzen zu können musst eine aktuelle Version von www.prototypejs.org und http://script.aculo.us in das /app/webroot/js/-Verzeichnis packen. Außerdem müssen die Bibliotheken in allen Layouts oder Views die AjaxHelper-Funktionalität benötigen, eingebunden werden.
Zuerst müssen die Ajax- und JavaScriptHelper im Controller eingebunden werden:
class WidgetsController extends AppController {
var $name = 'Widgets';
var $helpers = array('Html','Ajax','Javascript');
}
class WidgetsController extends AppController {var $name = 'Widgets';var $helpers = array('Html','Ajax','Javascript');}
Ist das geschehen, kann die link()-Methode von JavaScriptHelper verwendet werden um die Bibliotheken einzubinden:
echo $javascript->link('prototype');
echo $javascript->link('scriptaculous');
echo $javascript->link('prototype');echo $javascript->link('scriptaculous');
Jetzt kann der AjaxHelper verwendet werden:
$ajax->whatever();
$ajax->whatever();
Wenn der Controller die RequestHandler Komponente eingebunden hat, benutzt CakePHP automatisch das Ajax-Layout wenn eine Action per Ajax angefragt wird.
class WidgetsController extends AppController {
var $name = 'Widgets';
var $helpers = array('Html','Ajax','Javascript');
var $components = array( 'RequestHandler' );
}
class WidgetsController extends AppController {var $name = 'Widgets';var $helpers = array('Html','Ajax','Javascript');var $components = array( 'RequestHandler' );}


























