`
jueyue
  • 浏览: 195579 次
社区版块
存档分类
最新评论

jeecg 的t:dgCol添加背景色支持

 
阅读更多

这个功能下个版本就会支持,我这里先爆下,因为有童鞋问到,easyui 有提供style设置的.这个是我们的基本前提
后面就是我们的修改:
首先我们先在这个类DataGridColumnTag 里面添加一个属性

  1. protected String style; //Td的CSS
复制代码

然后这个他的set方法,get就不用了,之后

  1. public int doEndTag() throws JspTagException {
  2.                 Tag t = findAncestorWithClass(this, DataGridTag.class);
  3.                 DataGridTag parent = (DataGridTag) t;
  4.                 parent.setColumn(title,field,width,rowspan,colspan,align,sortable,checkbox,formatter,hidden,replace,treefield,image,query,url,funname,arg,queryMode, dictionary,frozenColumn,extend,style);
  5.                 return EVAL_PAGE;
  6.         }
复制代码

这里面加入我们添加的style,下一步,我们去DataGridTag这个tag大类里面去添加

  1. protected List<ColumnValue> columnStyleList = new ArrayList<ColumnValue>();// css替换集合
复制代码

这个这样我们把我们先放入的值存放到columnStyleList里面,再回到上面提到的public void setColumn()
这个方法,添加

  1. dateGridColumn.setStyle(style);//这个是必须的,不然怎么设置啊,对不
复制代码
  1. if(StringUtil.isNotEmpty(style)){
  2.                         String[] test = style.split(",");
  3.                         String text = "";
  4.                         String value = "";
  5.                         for (String string : test) {
  6.                                 text += string.substring(0, string.indexOf("_")) + ",";
  7.                                 value += string.substring(string.indexOf("_") + 1) + ",";
  8.                         }
  9. <b>                        setStyleColumn(field, text, value);</b>
  10.                 }
复制代码

再新增这个方法

  1. /**
  2.          * 设置CSS换值
  3.          * @param field
  4.          * @param text
  5.          * @param value
  6.          */
  7.         private void setStyleColumn(String field, String text, String value) {
  8.                 ColumnValue columnValue = new ColumnValue();
  9.                 columnValue.setName(field);
  10.                 columnValue.setText(text);
  11.                 columnValue.setValue(value);
  12.                 columnStyleList.add(columnValue);
  13.         }
复制代码

这样我们就把前台穿过来的css值存放起来了,下面只需要在最后的向前台输入里面添加就可以了
还有记得要添加清除哈

  1. public int doStartTag() throws JspTagException {
  2.                 // 清空资源
  3.                 urlList.clear();
  4.                 toolBarList.clear();
  5.                 columnValueList.clear();
  6.                 columnStyleList.clear();
  7.                 columnList.clear();
  8.                 fields = "";
  9.                 searchFields = "";
  10.                 return EVAL_PAGE;
  11.         }
复制代码

继续我们的,接下来我们找这个方法

  1. /**
  2.          * 拼接字段
  3.          * 
  4.          * @param sb
  5.          * @frozen 0 冰冻列    1 普通列
  6.          */
  7.         protected void getField(StringBuffer sb,int frozen) {
复制代码

这个方法就是拼装字段的,也就是现实字段的属性
我们在这个方法里面添加我们的style字段---在值替换的下面

  1. if (columnStyleList.size() > 0 && !column.getField().equals("opt")) {
  2.                                 String testString = "";
  3.                                 for (ColumnValue columnValue : columnStyleList) {
  4.                                         if (columnValue.getName().equals(column.getField())) {
  5.                                                 String[] value = columnValue.getValue().split(",");
  6.                                                 String[] text = columnValue.getText().split(",");
  7.                                                 sb.append(",<b>styler:function</b>(value,rec,index){");
  8.                                                 for (int j = 0; j < value.length; j++) {
  9.                                                         testString += "if(value=='" + value[j] + "'){return \'" + text[j] + "\'}";
  10.                                                 }
  11.                                                 sb.append(testString);
  12.                                                 sb.append("else{return value}");
  13.                                                 sb.append("}");
  14.                                         }
  15.                                 }
  16.                                 
  17.                         }
复制代码

注意上面的加粗字体,这个就是easyui的方法,进行是style设置
好了到此就大功告成了后台只有在easyui.tld里面的DataGridColumnTag添加我们新增的属性

  1. <attribute>
  2.    <name>style</name>
  3.    <required>false</required>
  4.    <rtexprvalue>true</rtexprvalue>
  5.    <description>td CSS 属性</description>
  6.   </attribute>
复制代码

c再重启下tomcat就可以使用了

  1. <t:dgCol title="jueyue" field="jueyue" replace="是_Y,否_N" style="background:red;_N" ></t:dgCol>
复制代码

下面展示下效果吧 <ignore_js_op style="word-wrap: break-word; color: rgb(68, 68, 68); font-family: Tahoma, Helvetica, SimSun, sans-serif;">QQ图片20130720175033.jpg 就变成红色了
到此结束,第一次写这么多....

0
0
分享到:
评论

相关推荐

    c#datagrid操作,解决datagridView加载慢.docx

    * 广泛的数据源支持:DataGridView 控件可以与各种数据源集成,例如数据库、数据集、数据表等。 解决 DataGridView 加载慢的问题 在使用 DataGridView 控件时,人们经常会遇到加载慢的问题。这个问题的主要原因是 ...

    python入门-30.寻找列表中只出现一次的数字-寻找单身狗.py

    python入门-30.寻找列表中只出现一次的数字——寻找单身狗.py

    布尔教育linux优化笔记

    linux优化笔记,配套视频:https://www.bilibili.com/list/474327672?sid=4496133&spm_id_from=333.999.0.0&desc=1

    知识付费系统-直播+讲师入驻+课程售卖+商城系统-v2.1.9版本搭建以及资源分享下载

    知识付费系统-直播+讲师入驻+课程售卖+商城系统-v2.1.9版本搭建以及资源分享下载,CRMEB知识付费分销与直播营销系统是由西安众邦科技自主开发的一款在线教育平台,该系统不仅拥有独立的知识产权,还采用了先进的ThinkPhp5.0框架和Vue前端技术栈,集成了在线直播教学及课程分销等多种功能,旨在为用户提供全方位的学习体验,默认解压密码youyacaocom

    美妆神域-JAVA-基于springBoot美妆神域设计与实现

    美妆神域-JAVA-基于springBoot美妆神域设计与实现

    原生js制作Google粘土logo动画涂鸦代码.zip

    原生js制作Google粘土logo动画涂鸦代码.zip

    golin 扫描工具使用, 检查系统漏洞、web程序漏洞

    golin 扫描工具使用, 检查系统漏洞、web程序漏洞

    原生态纯js图片网格鼠标悬停放大显示特效代码下载.zip

    原生态纯js图片网格鼠标悬停放大显示特效代码下载.zip

    用AWLUM进行灰色编码2^2n-QAM调制的精确率Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手

    去水印web端独立版web

    去水印web端独立版web

    原生js制作左侧浮动可折叠在线客服代码.zip

    原生js制作左侧浮动可折叠在线客服代码.zip

    Chrome 谷歌浏览器下载

    Chrome 谷歌浏览器下载

    亲测全新完整版H5商城系统源码 附教程

    全新完整版H5商城系统源码 自己花钱买的,亲测可用,需要自行下载 H5商城系统设置是实现商城基本功能的核心部分,涵盖了从网站配置、短信和支付配置,到商品、工单、订单、分站和提现管理等多个模块的设置。以下是详细的设置指南,帮助您快速上手并高效管理商城系统。 测试环境:Nginx+PHP7.0+MySQL5.6 1. 网站配置 设置商城名称、LOGO、标题、联系方式和SEO关键词等,确保商城专业和易于搜索。 2. 短信配置 配置短信接口和模板,用于发送订单通知、验证码等,提升用户体验。 3. 支付接口配置 配置微信、支付宝等支付接口,填写API密钥和回调地址,确保支付流畅。 4. 商品分类管理 对商品进行分类和排序,设置分类名称和图标,便于用户查找商品。 5. 商品管理 添加和管理商品信息、规格、图片等,确保商品信息准确丰富。 6. 工单管理 查看和回复用户工单,记录售后问题,提升用户服务质量。 7. 订单管理 查看订单详情,更新订单状态,支持批量导出,方便订单跟踪。 8. 分站管理 创建不同区域分站,设置权限,统一管理各区域市场。 9. 提现管理

    短信3.141592672893982398674234

    apk安装包

    原生js选项卡插件自定义图片滑动选项卡切换.zip

    原生js选项卡插件自定义图片滑动选项卡切换.zip

    1-宗教信息佛教佛寺寺庙庵堂相关数据-社科数据.zip

    宗教信息佛教佛寺寺庙庵堂相关数据集提供了全国各个地区省市县各个佛教寺庙的详细信息。这些数据不仅包括寺庙的名称和负责人姓名,还涵盖了所属省份、地级市、区县、具体地址、建立日期以及支派类别等关键信息。该数据集整理了超过3万条样本,为研究中国佛教寺庙的分布、历史和文化提供了丰富的第一手资料。这些信息有助于了解佛教在中国的传播和发展,以及寺庙在社会和文化中的作用。数据的整理和提供,对于宗教学、社会学、历史学和文化研究等领域的学者来说,是一个宝贵的资源。

    线性电阻网络的等效电阻计算Matlab代码.rar

    1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。 替换数据可以直接使用,注释清楚,适合新手

    简单的 Python 版本管理.zip

    简单的 Python 版本管理pyenvpyenv 可让您轻松在多个 Python 版本之间切换。它简单、不引人注目,并遵循 UNIX 传统,即使用单一用途的工具来做好一件事。该项目由rbenv和 ruby​​-build分叉而来,并针对 Python 进行了修改。pyenv 的作用是什么......允许您根据每个用户更改全局 Python 版本。为每个项目的 Python 版本提供支持。允许您使用环境变量覆盖 Python 版本。一次搜索多个 Python 版本的命令。这可能有助于使用tox跨 Python 版本进行测试。与 pythonbrew 和 pythonz 相比,pyenv没有……依赖于Python本身。pyenv由纯shell脚本制作。不存在Python的引导问题。需要加载到你的 shell 中。相反,pyenv 的 shim 方法通过向你的 中添加目录来工作PATH。管理虚拟环境。当然,你可以自己创建虚拟环境 ,或者使用pyenv-virtualenv 来自动化该过程。目录安装获取 PyenvLinux/UNIX自动安装程序基本

    Notepad-v2.20工具,是替代Notepad++的首选工具

    Notepad-v2.20工具,是替代Notepad++的首选工具

    原生js随机图片拖拽排序代码.zip

    原生js随机图片拖拽排序代码.zip

Global site tag (gtag.js) - Google Analytics