Yii 2框架使用Ajax与后端交互 £神魔★判官ぃ 2021-06-24 15:58 395阅读 0赞 近来用了一下Ajax技术做了一下与yii框架的后台交互,虽然不是很复杂,但是还是写一下。 前端JS代码: function delete(id){ if(confirm("确认删除吗")) $.ajax({ url : "index.php?r=nav/delete", type : 'post', data : {"id":id}, dataType : 'json', async : false, success : function(data){ if(data.status) window.location.reload(); else alert("删除失败"); }, error : function(){ alert("根本没有传过去"); } }); } 后端控制器代码: public function actionDelete(){ $id = \Yii::$app->request->post("id", ''); $status = false; if(NavForm::delete($id)) $status = true; return json_encode(['status' => $status]); } 这样就完成了一次Ajax交互。 其中前端的url参数可能会遇到点问题,实在不知道怎么写url的话,就先随便写一个,之后再在浏览器中用控制器查看json数据发送到哪去了,再根据结果拼接正确的url。 控制器中返回json数据有两种方式: 1.return json\_encode(\['status'\] => $status); 2.在返回代码前添加返回头信息: Yii::$app->response->format = Response::FORMAT\_JSON; 之后返回数组就可以了: return \['status' => $status\];
还没有评论,来说两句吧...