WebContent/js/layfilter.js

(开头部分) 6KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

layui.define(['jquery', 'layer'], function (exports){
    var $ = layui.jquery;
    var chekedArr = {};
    var layfilter = {
        render:function(options){
            var url = options.url;
            var flag = true;
            //传入了地址,则直接将此地址覆盖
            if(url){
                $.getJSON(url,options.where,function(res){
                    if(res.code == 0){
                       var  data = res.data;
                        flase = true;
                        layfilter.init(options,data);
                    }else{
                        layer.msg(res.msg||'查询过滤组件数据异常',{icon:2});
                        flag = false
                    }
                })
            }
            if(!flag){
                return;
            }
        },
        init:function(options,dataSource){
            var elem = options.elem;
            var $dom = $(elem);
            var itemWidth = options.itemWidth
            var arr = {};
            var $table = $('<table class="filterTable"></table>');
            for(var i=0;i<dataSource.length;i++){
                var $tr =$('<tr></tr>');
                var $td1 = $('<td class="item-title">'+dataSource[i].title+':</td>');
                var $td2 = $('<td class="items"></td>');
                var type = dataSource[i].type;
                if(!type){
                    console.warn('第'+(i+1)+'个元素的类型[type]为空设为默认值[radio]');
                    type = 'radio';
                }
                var $ul = $('<ul class="layfilter-ul" type="'+type+'" name="'+dataSource[i].name+'"></ul>');
                var width = itemWidth && itemWidth.length>0 ? (itemWidth.length>i ? itemWidth[i]:itemWidth[itemWidth.length-1]):80;
                arr[dataSource[i].name]=[];
                for(var j=0;j<dataSource[i].data.length;j++){
                    var item =  dataSource[i].data;
                    var className = 'layfilter-item';
                    if(item[j].checked && item[j].checked=='true'){
                        className = "layfilter-item layfilter-item-checked";
                        arr[dataSource[i].name].push({name:item[j].name,value:item[j].value});
                    }
                    //判断是否禁用
                    if(item[j].disabled && item[j].disabled=='true'){
                        $ul.append('<li value="'+item[j].value+'" style="width:'+width+'px;height: 28px;line-height: 28px;" class="'+className+'"><a disabled="disabled" class="layui-disabled">'+item[j].name+'</a></li>');
                    }else{
                        $ul.append('<li value="'+item[j].value+'" style="width:'+width+'px;height: 28px;line-height: 28px;" class="'+className+'"><a>'+item[j].name+'</a></li>');
                    }
                    
                }
                $td2.append($ul);
                $tr.append($td1).append($td2);
                $table.append($tr);
后面还有 87 行代码,购买后查看完整代码

24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明

AI 解读 AI

登录后可用,每次 10 积分,解读结果公开显示在下面。

还没有人解读过这个文件。