在这次练习中遇到以下问题。希望老师能解答。
【1】如何用javascrpt或者jquery获取“被勾选”的复选框(<input type="checkbox" value='1'>)的value值。
【2】如何查看Doadd和Doedit的dump出来的数据。
<?php namespace app\admin\controller; use think\Controller; use think\facade\Request; use app\admin\model\Admins as adminsM; use app\admin\validate\Vali; class Admins extends Controller { public function lst() { //获取数据并且分页显示 $admins = adminsM::paginate(5); $page = $admins->render(); //渲染到模板 $this->assign('admins',$admins); $this->assign('page',$page); return $this->fetch(); } public function add() { // if (request()->isPost()) { // $res = input('post.'); // } return $this->fetch(); } public function doadd() { //获取表单提交的数据 $res = input('post.'); //获取表单提交复选框的数组,role=[1,2]转化成字符,role='1,2', if (isset($res['role'])) { $role=implode(',', $res['role']); $res['role']=$role; } //用验证器验证数据 $validate = new Vali; if (!$validate->check($res)) { $this->error($validate->getError()); } //保存数据到数据库 $adminsM = adminsM::create($res); //保存成功后返回数据 if ($adminsM) { return ['res'=>1,'msg'=>'添加成功']; } else { return ['res'=>0,'msg'=>'添加失败']; } } public function edit() { //获取被编辑id的数据 $id = input('id'); //在数据库中取出该id的数据 $admins = adminsM::get(function($suib)use($id){ $suib->where('id',$id); }); //把数据库中复选框,为避免获取器,获取原始数据用getData()方法,并且转成数组 $role=explode(',',$admins->getData('role')); $this->assign([ 'admins'=>$admins, 'role'=>$role, ]); //提交以后的数据更新处理 if (request()->isPost()) { $res=input('post.'); if ($res['password']=='') { $res['password']=$admins['password']; } unset($res['repassword']); // dump($res);die; $upd = adminsM::where('id',$id)->update($res); if ($upd) { $this->success('更新成功',url('admins/edit')); } else { $this->error('更新失败'); } } return $this->fetch(); } public function delete() { //获取被删除的id $id=input('id'); $res=adminsM::destroy($id); if ($res) { return ['res'=>1,'msg'=>'删除成功']; } else { return ['res'=>0,'msg'=>'删除失败']; } } }