fastadmin多级联动

效果图:

fastadmin多级联动_第1张图片

add.html代码:

    

后台代码:

注:先看写别人的数据结构

value 和name 必须按照这个格式去执行 否则没办法使用该下拉框!!!!!

fastadmin多级联动_第2张图片

后台代码:

/**
     * 读取省市区数据,联动列表
     */
    public function area()
    {
        $params = $this->request->get("row/a");
        if (!empty($params)) {
            $province = isset($params['province']) ? $params['province'] : '';
            $city     = isset($params['city']) ? $params['city'] : '';
        }
        else {
            $province = $this->request->get('province', '');
            $city     = $this->request->get('city', '');
        }
        $where        = ['pid' => 0, 'level' => 1];
        $provincelist = null;
        if ($province !== '') {
            $where['pid']   = $province;
            $where['level'] = 2;
            if ($city !== '') {
                $where['pid']   = $city;
                $where['level'] = 3;
            }
        }
        $provincelist = Db::name('area')->where($where)->field('id as value,name')->select();
        $this->success('', '', $provincelist);
    }


    /**
     * 获取街道 街道
     * @param $params -- district:id
     * 测试数据:1533
     */
    public function street()
    {
        $params = $this->request->param('row/a');
        extract($params);

        if (!$district) {
//            $this->success('街道-列表-1', '', StreetModel::select());
        }

        $result = StreetModel::where(['district' => $district])->select();

        if (!$result) {
            $this->error('暂无数据');
        }

        $this->success('街道-信息-1', '', $result);
    }

    /**
     * 获取街道 社区
     * @param $params -- street:id
     */
    public function community()
    {
        $params = $this->request->param('row/a');
        extract($params);

        if (!$street) {
//            $this->success('社区-列表-2', '', CommunityModel::select());
        }

        $result = CommunityModel::where(['street' => $street])->select();

        if (!$result) {
            $this->error('暂无数据');
        }

        $this->success('社区-信息-2', '', $result);
    }

    /**
     * 获取街道 楼院
     * @param $params -- community:id
     */
    public function floor()
    {
        $params = $this->request->param('row/a');
        extract($params);

        if (!$community) {
//            $this->success('楼院列表-3', '', FloorModel::select());
        }

        $result = FloorModel::where(['community' => $community])->select();

        if (!$result) {
            $this->error('暂无数据');
        }

        $this->success('楼院信息-3', '', $result);
    }

    /**
     * 获取街道 楼组
     * @param $params -- floor:id
     */
    public function organize()
    {
        $params = $this->request->param('row/a');
        extract($params);

        if (!$floor) {
//            $this->success('楼组-列表-4', '', OrganizeModel::select());
        }


        $result = OrganizeModel::where(['floor' => $floor])->select();

        if (!$result) {
            $this->error('暂无数据');
        }

        $this->success('楼组-信息-4', '', $result);
    }

    /**
     * 获取街道 单元
     * @param $params -- organize:id
     */
    public function element()
    {
        $params = $this->request->param('row/a');
        extract($params);

        if (!$organize) {
//            $this->success('单元-列表-5', '', ElementModel::select());
        }

        $result = ElementModel::where(['organize' => $organize])->select();

        if (!$result) {
            $this->error('暂无数据');
        }

        $this->success('单元-信息-5', '', $result);
    }

    /**
     * 获取街道 房号
     * @param $params -- element:id
     */
    public function house()
    {
        $params = $this->request->param('row/a');
        extract($params);

        if (!$element) {
//            $this->success('房号-列表-6', '', HouseModel::select());
        }

        $result = HouseModel::where(['element' => $element])->select();

        if (!$result) {
            $this->error('暂无数据');
        }

        $this->success('房号-信息-6', '', $result);
    }

model:

注:需要将value设置为id

  /**
     * 给value 赋值
     * @param $value
     * @param $data
     */
    public function getValueAttr($value, $data)
    {
        return $data['id'];
    }

数据库:

地址:greentown_address_community地区表.sql-MySQL文档类资源-CSDN下载

edit.thml页面

 

你可能感兴趣的:(php,ajax,javascript,vue.js)