CakePHP Ajax删除
我试图通过ajax删除cakephp数据CakePHP Ajax删除,cakephp,cakephp-2.4,Cakephp,Cakephp 2.4,我试图通过ajax删除cakephp数据 <button class="del" id=<?php echo $user['User']['id']; ?>>Delete </delete> 我已经成功地获得了用户的id。现在我正试图在删除操作中将其发送给userscontroller。所以我编写了如下代码 $('document').ready(function(){ $('.del').click(function(){
<button class="del" id=<?php echo $user['User']['id']; ?>>Delete </delete>
我已经成功地获得了用户的id。现在我正试图在删除操作中将其发送给userscontroller。所以我编写了如下代码
$('document').ready(function(){
$('.del').click(function(){
var x=$(this).attr("id");
alert(x);
jQuery.get("<?php echo $this->webroot . $this->params["users"]; ?>/delete",{"id":x},function(data,stat){
jQuery("#success").load("success.ctp");
});
});
});
在这里它不起作用。在控制器中如何定义它?如果您使用before filter
function beforeFilter()
{
//Here set Which pages should be accessable to various users
$adminPages =array('delete');
$this->Auth->allow($adminPages);
......
}
允许使用Auth Allow执行它
如果这也可以正常工作,请检查AJAX字符串是否正确。使用手动删除检查,如abc.com/Users/DELETE/id:2只需在jQuery.get中复制粘贴字符串u get。它是否正确删除
如果所有这些都不起作用,请尝试以下操作:
和ajax:
jQuery.get("<?php echo $this->webroot . $this->params["users"].'/delete/';?>"+x+"",{"id":x},function(data,stat){
jQuery("#success").load("success.ctp");
});
这里的错误是唯一的网址,我已经改变了它,现在它的工作良好
echo $this->webroot . $this->params["users"]; ?>/delete"
到
如果你想使用ajax,试试这个
浏览器生成的jQuery.get/delete,{id:x},functiondata,stat{jQuerysuccess.loadsuccess.ctp;};作为HTML?
public function delete($id=NUll) {
$id=$_GET['id'];
$this->User->id = $id;
if ($this->User->delete()) {
$this->Session->setFlash(__('The user has been deleted.'));
}
return $this->redirect(array('action' => 'index'));
}
jQuery.get("<?php echo $this->webroot . $this->params["users"].'/delete/';?>"+x+"",{"id":x},function(data,stat){
jQuery("#success").load("success.ctp");
});
echo $this->webroot . $this->params["users"]; ?>/delete"
echo Router::url(array('controller'=>'users','action'=>'delete'));?>"
public function delete_user() {
$this->autoRender = false;
if ($this->request->data) {
$this->User->id = $this->request->data['id'];
$update = $this->User->saveField($this->request->data['field'], $this->request->data['value']);
if ($update) {
$repsonce['success'] = '1';
$this->Session->setFlash(__d('User', 'User Deleted successfully'), 'default', array('class' => 'alert alert-success'));
} else {
$repsonce['success'] = '0';
}
} else {
$repsonce['success'] = '0';
}
echo json_encode($repsonce);
}