在Cakephp中单击复选框时发送Ajax调用

在Cakephp中单击复选框时发送Ajax调用,ajax,cakephp,checkbox,event-handling,Ajax,Cakephp,Checkbox,Event Handling,我使用的是CakePHP2.3.6。在页面中,我有一个复选框。我想,当我选中复选框(单击它)时,一个ajax post请求将被发送到一个页面,一些数据将保存在db中,然后会出现一个成功的通知。当我取消选择它(再次单击它)时,一个ajax post请求将再次发送到该页面,一些数据将保存在数据库中,之后将显示一个成功的通知。因此,我的视图文件如下所示: . . . <form> <label><input type="checkbox" class="item_

我使用的是CakePHP2.3.6。在页面中,我有一个复选框。我想,当我选中复选框(单击它)时,一个ajax post请求将被发送到一个页面,一些数据将保存在db中,然后会出现一个成功的通知。当我取消选择它(再次单击它)时,一个ajax post请求将再次发送到该页面,一些数据将保存在数据库中,之后将显示一个成功的通知。因此,我的视图文件如下所示:

.
.
.
<form>
    <label><input type="checkbox" class="item_id" />Save the data</label>
</form>
.
.
.
<?php $this->Js->get('.item_id')->event('onclick',$this->Js->request(array('controller'=>'items','action'=>'saveData',$item['Item']['id'],$another_id),array('async'=>true)));?>
但是,当我点击复选框时,什么也没有发生。 我将ajax调用的php代码放在特定视图文件的末尾,而不是
default
布局。而且,当我从浏览器中看到页面的源代码(“查看源代码”选项)时,我没有看到任何应该由CakePHP生成的jQuery代码

有什么问题?我在这里该怎么办?我需要在数据库中保存一些数据并显示一些通知


谢谢。

您是否将Js帮助程序包含在控制器中

public $helpers = array('Js' => array('Jquery'));
用javascript文件替换jquery

还可以尝试在结束标记之前包含这一行:

echo $this->Js->writeBuffer(); // Write cached scripts

打印缓存。

是的,我尝试了所有这些,但结果相同。顺便说一下,谢谢你的帮助:)。
echo $this->Js->writeBuffer(); // Write cached scripts