一尘不染

CakePHP-如何将控制器操作中的字符串(如JSON)返回给Ajax请求

ajax

因此,我让我的JavaScript进行了Ajax调用,/my_controller/ajax_action但是在控制器中,我不知道该怎么做才能将某些内容输出回JavaScript。

我收到错误消息是因为没有视图,MyController::ajaxAction()但是显然没有视图,所以该怎么办?


阅读 258

收藏
2020-07-26

共1个答案

一尘不染

为此,假设您要在数组中输出变量$data,然后使用$this->set('data', $data);方法将该数组传递给视图,然后创建一个view
/General/SerializeJson.ctp。在该视图文件中,放<?PHP echo json_encode($data); ?>完后可以使用$this->render('/General/SerializeJson');,它应该输出json。

通用代码…

/Controllers/MyController.php

public class MyController extends AppController
{
    public function ajaxAction()
    {
        $data = Array(
            "name" => "Saad Imran",
            "age" => 19
        );
        $this->set('data', $data);
        $this->render('/General/SerializeJson/');
    }
}

/Views/General/SerializeJson.ctp

<?PHP echo json_encode($data); ?>
2020-07-26