本文介绍: fastadmin下拉框联动。在项目中经常需要用到下拉联动。网上的资料多有不全,所以根据自身经验,以笔记的形式发布出来。上边的“ 状态下拉框用的动态下拉框,就是,statelist 为后端传过来的数据绑定下拉框。下边的 子状态 下拉框,是根据状态下拉框的改变,而进行改变。通过 js 阿贾克斯ajax进行传递。

fastadmin学习笔记—– fastadmin下拉联动

学习笔记

下拉联动

项目中经常需要用到下拉联动。网上的资料多有不全,所以根据自身经验,以笔记的形式发布出来。仅供参考。

上边的“ 状态 ” 下拉框用的动态下拉框,就是,statelist 为后端传过来的数据绑定到下拉框。

下边的 子状态 下拉框,是根据状态下拉框的改变,而进行改变。

    <div class="form-group"&gt;
        <label class="control-label col-xs-12 col-sm-2"&gt;{:__('状态')}:</label&gt;
        <div class="col-xs-12 col-sm-8"&gt;

            <select  id="c-stateId" data-rule="required" class="form-control selectpicker" name="row[stateId]"&gt;
                <option value="0"  &gt;选择状态</option&gt;
                {foreach name="StateList" item="vo"}
                <option value="{$vo.id}"  >{$vo.title}</option>
                {/foreach}
            </select>
        </div>
    </div>

    <div class="form-group">
        <label for="c-machine_list_state" class="control-label col-xs-12 col-sm-2">{:__('子状态')}:</label>
        <div class="col-xs-12 col-sm-8">
            <select  id="c-fi_Sub" data-rule="required" class="form-control" name="row[title]">
                <option value="0" >选择状态</option>
            </select>
        </div>
    </div>

通过 js 阿贾克斯ajax进行传递


      // 机台状态下拉框选中值时
  $(document).on("change", "#c-stateId", function () {
       var thisval=$(this).val();
       Fast.api.ajax(
       { 
          url: 'state/State',
          data: {thisval: thisval},
       }, function (data, ret) {
          console.log(data);
          $("#c-fi_Sub").html(data.html);
           return false;
       }, function (data, ret) {
           //如果失败的回调
           alert(ret.msg);
           return false;
       });
  });

这是后端数据

    public function State()
    {
        $mciSerId = $this->request->post("thisval");

        if($mciSerId=="")
        {
            $backData = [];
            exit;
        }
        $rsList=Db::name("state_list")
            ->field("id,pid,title")
            ->where(" pid=$mciSerId ")
            ->order("id ASC")
            ->select();
        $html='<option value="0">请选择状态</option>';
        if(isset($rsList))
        {
            foreach ($rsList as $k=>$v){
                $html.=' <option value="'.$v["id"].'" >'.$v["title"].'</option>';
            }
        }
        $data=[];
        $data["html"]=$html;
        $backData=[];
        $backData["msg"]="成功";
        $backData["code"]=1;
        $backData["data"]=$data;
        return json($backData);
    }

以上是下拉框联动

如转载请标明出处谢谢。

原文地址:https://blog.csdn.net/qq_42580037/article/details/134670976

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_5033.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注