xinyb
2023-06-06 6efeaa73fa4930062983369bee7b9115fd57257f
43控件添加全选功能
2个文件已修改
23 ■■■■■ 已修改文件
WebRoot/js/panel.js 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebRoot/public/template/0/panelControl.jsp 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebRoot/js/panel.js
@@ -380,6 +380,7 @@
                var Evn=$doc(field);//获取控件对象
                //调用31控件查询值
                getControlValue(field, fieldtype, targetControl, callback, pindex);
                let allValue=[];//全选的值
                //43控件初始化
                $(Evn.doc).select2({
                    placeholder: "---请选择---" ,
@@ -400,10 +401,24 @@
                    //循环option赋值
                    for(var i=0;i<select2Options.length;i++){
                        $(this).append('<option value="'+select2Options[i].id+'">'+select2Options[i].text+'</option>');
                        if(select2Options[i].id!=-1){
                            allValue.push(select2Options[i].id);
                        }
                    }
                    //选中之前的值
                    $(this).val(original).trigger('change');
                }).on("select2:select", function (evt) {
                    if (evt.params.data.id == -1) { //新增全部 xin 2023-6-2 14:29:54
                        $("#"+field).select2("val", [-1]); //清空其他选项
                        $("#"+field).val(allValue).trigger("change");
                        return;
                    }else{ //新增不是全部
                        var selected = $("#"+field).select2().val(); //获取select2选中的值
                        if($.inArray("-1", selected) >= 0){ //判断已选中是否有全部选项,有的话清除全部选项
                            selected.splice(0,1); //清除第一个元素,也就是value为-1的选项
                            $("#"+field).select2("val",selected); //重新初始化select2
                        }
                    }
                      var element = evt.params.data.element;
                      var $element = $(element);
                      $element.detach();
WebRoot/public/template/0/panelControl.jsp
@@ -52,7 +52,13 @@
                  JsonArray array=new JsonArray();
                  JsonObject json=null;
                  Utils utils=(Utils)FactoryBean.getBean("hq.daoUtils");
                  rs=utils.getRowSet(sql);
                  rs=utils.getRowSet(sql);
                  if(fieldtype==43){//42控件在下拉添加一个全选 xin 2023-6-2 10:39:19
                      json=new JsonObject();
                      json.addProperty("id", -1);
                      json.addProperty("text", "全选");
                      array.add(json);
                  }
                  while(rs.next()){
                      switch(fieldtype){
                        case 30://单选按钮