多级联动进行下拉选择框,首先要添加分类,
分类分为顶级分类和子分类
添加顶级分类和二级分类
public function add()
{
if ($this->request->isPost()) {
$data = $this->request->post();
if (empty($data['title'])) return json(['status' => 'error', 'msg' => '标题不能为空']);
$data['is_show'] = 'true';
$data['create_time'] = time();
$res = columnsortmodel::insert($data);
if ($res) return json(['status' => 'success', 'msg' => '添加成功', 'url' => '/admin/column.columnsort/index']);
} else {
$id = $this->request->get('id');
$this->assign('pid', $id);
$video = Db::name('videosort')->where(['is_show'=>'true','pid'=>2])->order('id','asc')->select();
$this->assign([
'video'=>$video,
]);
return $this->fetch();
}
}
public function adder(){
if ($this->request->isPost()) {
$data = $this->request->post();
if (empty($data['title'])) return json(['status' => 'error', 'msg' => '标题不能为空']);
$data['is_show'] = 'true';
$data['create_time'] = time();
$res = columnsortmodel::insert($data);
if ($res) return json(['status' => 'success', 'msg' => '添加成功', 'url' => '/admin/column.columnsort/index']);
} else {
$id = $this->request->get('id');
$this->assign('pid', $id);
return $this->fetch();
}
return view();
}
这是添加二级分类的
下面是二级联动选择查表
$sort = Db::name('columnsort')->where(['pid' => 0])->select();
foreach ($sort as $k=>$v) {
$sort[$k]['sort']=Db::name('videosort')->where(['is_show'=>'true','pid'=>2,'id'=>$v['sort']])->value('title');
}
$this->assign('sort', $sort);
return $this->fetch();
HTML代码
先选择顶级分类,去请求二级分类的接口方法
form.on('select(test)', function(data){
var id=data.value;
$.ajax({
url:'geterji',
data:{id:id},
type:'post',
success:function (res) {
$('select[name="er_id"]').empty();
var html='';
for(var i=0;i'+res[i]["title"]+''
}
$('select[name="er_id"]').append(html);
form.render('select'); //刷新select选择框渲染
console.log(html);
}
})
});
通过请求返回的数据,追加到页面上
public function geterji()
{
$id = $this->request->param('id');
$data = Db::name('columnsort')->where(['pid' => $id])->field('id,title')->select();
return json($data);
}
这样就可以实现二级联动筛选
0条评论