塘屉保骇警侵晦笑滴技假摆诬
删除功能实现,修改index.html
{include file="common@header"} <div class="x-nav"> <span class="layui-breadcrumb"> <a href="">首页</a> <a href="">分类</a> <a> <cite>分类管理</cite></a> </span> <a class="layui-btn layui-btn-small" style="line-height:1.6em;margin-top:3px;float:right" href="javascript:location.replace(location.href);" title="刷新"> <i class="layui-icon" style="line-height:30px">ဂ</i></a> </div> <div class="x-body"> <xblock> <button class="layui-btn" onclick="x_admin_show('添加用户','{:url(\'cateAdd\')}')"><i class="layui-icon"></i>添加</button> </xblock> <table class="layui-table"> <thead> <tr> <th>ID</th> <th>栏目名称</th> <th>排序</th> <th>类型</th> <th>操作</th> </thead> <tbody> <!-- 循环输出数据 --> <!-- name="cates":接收的数据的变量名称 id="cate" 使用变量cate来输出cates中的数据 --> {volist name="cates" id="cate"} <tr> <td>{$cate.cate_id}</td> <td>{$cate.cate_name}</td> <td>{$cate.cate_order}</td> <td>{$cate.cate_type}</td> <td class="td-manage"> <a title="编辑" onclick="x_admin_show('编辑','{:url(\'edit\')}?cateid={$cate.cate_id}')" href="javascript:;"> <i class="layui-icon"></i> </a> <a title="删除" onclick="member_del(this,'{$cate.cate_id}')" href="javascript:;"> <i class="layui-icon"></i> </a> </td> </tr> {/volist} </tbody> </table> </div> <script> layui.use('laydate', function(){ var laydate = layui.laydate; //执行一个laydate实例 laydate.render({ elem: '#start' //指定元素 }); //执行一个laydate实例 laydate.render({ elem: '#end' //指定元素 }); }); /*用户-停用*/ function member_stop(obj,id){ layer.confirm('确认要停用吗?',function(index){ if($(obj).attr('title')=='启用'){ //发异步把用户状态进行更改 $(obj).attr('title','停用') $(obj).find('i').html(''); $(obj).parents("tr").find(".td-status").find('span').addClass('layui-btn-disabled').html('已停用'); layer.msg('已停用!',{icon: 5,time:1000}); }else{ $(obj).attr('title','启用') $(obj).find('i').html(''); $(obj).parents("tr").find(".td-status").find('span').removeClass('layui-btn-disabled').html('已启用'); layer.msg('已启用!',{icon: 5,time:1000}); } }); } /*用户-删除*/ function member_del(obj,id){ layer.confirm('确认要删除吗?',function(index){ //发异步删除数据 $.get("{:url('delete')}",'cate_id='+id,function(data){ if(data.status==1) { $(obj).parents("tr").remove(); layer.msg(data.msg,{icon:1,time:1000}); } }) }); } </script> </body> </html>
上方代码的核心源码是:
创建delete()
<?php namespace app\admin\controller; //引入公共控制器 use app\common\controller\Base; //引入模板 use app\common\model\Category as CateModel; class Category extends Base { public function index() { //显示分类表中的所有数据 // 1.获取分页信息 // 代码解释:all()查询分页表中的所有数据 按照id 升序排列 $cates = CateModel::all(function($query){ $query->order('cate_id','asc'); }); // 2.模板赋值 $this->view->cates=$cates; // 3.渲染模板 return $this->view->fetch(); } //编辑分类信息 public function edit() { //获取要修改的分类id: cateId //这里直接使用系统控制器的request函数 不需要再引入request对象 $cateId=$this->request->param('cateid'); //根据当前分类id,获取对应的分类名称,返回的是数组 $cate=CateModel::get($cateId); //模板赋值 $this->view->assign('cate',$cate); //模板赋值的另一种写法 通过魔术方法set()实现 // $this->view->cate=$cate; //渲染模板 return $this->view->fetch(); } //处理编辑操作 public function doEdit() { //根据分类id查询分类模型,并返回分类模板的实例对象 $cate=CateModel::get($this->request->param('cate_id')); ////直接更新分类实例的对应字段信息:以对象属性方式 $cate->cate_name=$this->request->param('cate_name'); $cate->cate_order=$this->request->param('cate_order'); $cate->cate_type=$this->request->param('cate_type'); //更新模型并判断是否成功? if($cate->save()) { //可以返回状态0/1之间切换来测试前端的提示信息 return ['status'=>1,'msg'=>'更新成功']; } return ['status'=>0,'msg'=>'更新失败']; } //渲染添加模板 public function cateAdd() { //添加操作不需要查询直接渲染模板即可 //渲染模板 return $this->view->fetch(); } //处理添加分类操作 public function doAdd() { // 创建模型对象 //模型与表对应 $cate = new CateModel(); //通过魔术方法给模型对象赋值 $cate->cate_name=$this->request->param('cate_name'); $cate->cate_order=$this->request->param('cate_order'); $cate->cate_type=$this->request->param('cate_type'); //执行操作 成功返回受影响的行数 if($cate->save()) { //将数据返回给前端 默认为json 数据默认返回格式可以在项目的配置文件的config/app.php中查看 return ['status'=>1,'msg'=>'添加成功']; } } //删除分类操作 public function delete() { // 获取前端传入的数据 $cateId=$this->request->param('cate_id'); //删除 if(CateModel::destroy($cateId)) { return ['status'=>1,'msg'=>'删除成功']; } } }
删除测试
删除前:
删除:
删除后:
愤五捌善垃潭坡矢衡规必筋蠢