通过Ajax调用cakePHP元素

时间:2012-02-25 17:43:29

标签: ajax cakephp jquery cakephp-1.3

只是一个简单的问题,是否可以通过jQuery Ajax调用cakePHP元素?我知道在cakePHP中调用元素的标准方法是:

<?php echo $this->element('path_to_element', 'data_to_send_to_element'); ?>

但是如果我想在$.ajax or .load()函数中调用我的元素呢?我如何实现这一目标?

谢谢

1 个答案:

答案 0 :(得分:6)

要通过Ajax或其他方式调用Cake中的任何内容,您需要在控制器中定义一个操作。您也可以创建视图,但也可以通过设置viewPath让动作直接呈现元素。例如:

class MyController extends AppController {
    // Apply Ajax layout automatically
    var $components = array('RequestHandler');

    function doSomething() {
        $this->autoRender = false;
        ... // set parameters needed by the element...

        // render an element
        $this->viewPath = 'elements';
        $this->render('path_to_element');
    }
}