FastAdmin多选下拉框使用方法以及编辑下拉框数据回显

FastAdmin多选下拉框使用方法

添加页面使用方法,这是一个二级联动,当选择分类后,会获取对应的商品
分类是单选,商品是多选

//页面代码
//data-source:接口地址
//data-params='{"id":""}' 自定义参数,商品接口请求的时候会带上id:''
	<div class="form-group" id="div-group-id">
		<label class="control-label col-xs-12 col-sm-2">分类:</label>
		<div class="col-xs-12 col-sm-8">
			<input id="c-name" data-rule="required" data-source="zhl/message/gettype" class="form-control selectpage" name="row[name]" type="text" value="">
		</div>
	</div>
	<div class="form-group" id="div-goods_id">
		<label class="control-label col-xs-12 col-sm-2">商品:</label>
		<div class="col-xs-12 col-sm-8">
			<input id="selectpage" data-params='{"id":""}'  data-rule="required" data-pagination="true"  data-search-field="name"       data-page-size="10"   data-multiple="true"    data-source="zhl/message/selectpage" class="form-control selectpage" name="row[goods_id]" type="text" value="" ">
		</div>
	</div>
	//编辑页面
		<div class="form-group">
		<label class="control-label col-xs-12 col-sm-2">商品:</label>
		<div class="col-xs-12 col-sm-8">
			<input id="c-class_id" data-rule="required" data-source="zhl/message/selectpage1" data-multiple="true" class="form-control selectpage" name="row[goods_id]" type="text" value="{$row.goods_id}">
		</div>
	</div>
	//接口代码
	//获取分类
	    public function gettype()
    {
        $list =  Db::name("zhl_category")->order('id DESC')->select();
        $CategoryList = [];
        foreach($list as $k=>$v){
            $CategoryList[$k]['id'] = $v['id'];//必须是这样的格式,对于返回的数据格式又要求
            $CategoryList[$k]['name'] = $v['name'];
        }
        $data['list'] = $CategoryList;
        $data['total'] = count($CategoryList);

        return $data;
    }
    //这个接口在编辑页面获取指定的商品实现多选下拉框默认选中
    public function selectpage1()
    {
        $params = $this->request->post();

        if(!empty($params['keyValue'])){//keyValue在编辑页面请求接口会出现这个字段,这个字段就是获取保存的商品ID,判断有值就只获取对应的商品信息
            $goods = Goods::where('id','in',$params['keyValue'])->select();
        }else{
            $goods = Goods::select();
        }
        $goodlist=[];
        foreach($goods as $k=>$v){

            $goodlist[$k]['name'] = $v['goodname'];
            $goodlist[$k]['id'] = $v['id'];
        }
        $data['list'] = $goodlist;
        $data['total'] = count($goodlist);

        return $data;
    }
    //获取商品,有分类ID就根据分类ID查询,没有就查询全部商品
    public function selectpage()
    {
        $params = $this->request->post();

        if(!empty($params['id'])){
            $goods = Goods::where('category_id',$params['id'])->select();
        }else{
            $goods = Goods::select();
        }
        $goodlist=[];
        foreach($goods as $k=>$v){

            $goodlist[$k]['name'] = $v['goodname'];//格式也是固定的
            $goodlist[$k]['id'] = $v['id'];
        }
        $data['list'] = $goodlist;
        $data['total'] = count($goodlist);

        return $data;
    }
    //js编辑页面用
      $("#selectpage").data("params", function (obj) {//点击商品下拉框就会触发这个,获取分类ID,并且赋值,这个时候请求的地址就是 zhl/message/selectpage1?id=获取的分类ID
                var id = $('#c-name').val();

                return { id: id } ;

     });
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值