CakePhP和jquery.getJSON如何将数据传递给控制器

时间:2012-12-01 22:33:55

标签: jquery json cakephp

我使用jquery 1.8.3和cakephp2,我有问题通过ajax将数据传递给控制器​​这是我的代码:

*。JS

     $.getJSON("json/", {data: "somedata"}, function (data) {
        console.log(data['data']);
        d = data;
    }).error(function() { alert("error"); })

* Controller.php这样:

public function json($site = null)
{
    $data = Array(
        "name" => $site,
    );
    $this->layout = 'ajax';
    $this->set(compact('data', $data));
}

view.ctp:

<?php 
    $this->autoRender = false;    
    echo json_encode(compact('data', $data)); 
?>

但是在控制台名称变量为null,有人知道如何正确吗? thx任何帮助!

1 个答案:

答案 0 :(得分:0)

在你的控制器中试试这个:

return new CakeResponse(array('body' => json_encode($data)));