zoukankan      html  css  js  c++  java
  • 三级联动(在YII框架中)

    //三级联动

    //数据库代码过多就不上传了

    //视图

    <div class="area">
        <table class="table">
            <select name="region[]" id="">
                <option value="0">请选择</option>
            <?php foreach ($regiondata as $value):?>
                    <option value="<?php echo $value['region_id'];?>"><?php echo $value['region_name'];?></option>
            <?php endforeach ?>
            </select>
        </table>
    </div>

    //jquery

    <script>

    //委托事件
        $(document).on('change',":input[name='region[]']",function(){
            var region_id=$(this).val();
            console.log(region_id);

       //注意:此时的_this是为了下面时使用
            var _this=$(this);
            var url="?r=test/nextregion";
            $.getJSON(url,{'region_id':region_id},function(msg){
                // alert(msg);
                if(msg.length>0&&region_id!=0){
                    var str="<select name='region[]'><option value=''>请选择</option>";

          //利用each循环拼接json数据
                    $(msg).each(function(k,v){
                        str+="<option value="+v.region_id+">"+v.region_name+"</option>";
                    })
                    str+="</select>";
                }
        //
                _this.nextAll().remove();
                _this.after(str);
            });
        });

    </script>

    //控制器页面

    public function actionAreacon(){
             $regiondata= (new yiidbQuery())
                ->select('region_id,region_name')
                ->from('region')
                ->where('parent_id=0')
                ->all();
             return $this->render('areacon',[
                    'regiondata'=>$regiondata,
             ]);
        }

    //处理三级联动

    //控制器对于get数据的处理和返回值(我的是利用YII框架,查询方式不同而已)

    //查询下级地区
        public function actionNextregion(){
            $request=YII::$app->request;

       //接收传过来的region_id(地区id)作为(地区父级)条件查询
            $region_id=$request->get('region_id');
            $regiondata= (new yiidbQuery())
                ->select('region_id,region_name')
                ->from('region')
                ->where('parent_id=:region_id',[':region_id'=>$region_id])
                ->all();
            echo json_encode($regiondata);die;
        }  

  • 相关阅读:
    如何巧妙着运用「位运算」来解决问题?
    一文读懂一台计算机是如何把数据发送给另一台计算机的
    Java集合与泛型中的几个陷阱,你掉进了几个?
    【链表问题】打卡10:将搜索二叉树转换成双向链表
    【链表问题】打卡9:将单链表的每K个节点之间逆序
    【链表问题】打卡8:复制含有随机指针节点的链表
    单例模式中的volatile关键字
    链表回文判断(基于链表反转)—Java实现
    设计模式之单例模式
    Spring的IoC与AOP的理解
  • 原文地址:https://www.cnblogs.com/itdi/p/5973657.html
Copyright © 2011-2022 走看看