帆软: js 控制隐藏空行详解(普通报表)

2024-02-12 01:18

本文主要是介绍帆软: js 控制隐藏空行详解(普通报表),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

帆软:js控制空行的隐藏的详细讲解

  • 1.视频效果
  • 2.非js隐藏空行的实现方法---自愿学习
  • 3.实现思路
  • 4.操作步骤
  • 5.页面操作说明
  • 6.截图效果
  • 7.注意
  • 8.附:代码展示

1.视频效果

帆软隐藏空行,显示空行--单个表格效果

2.非js隐藏空行的实现方法—自愿学习

  • 帆软:隐藏空行(适用于N条数据).
  • :帆软:隐藏空行(包括空字符串,null,数字0或0.000形式).

3.实现思路

  • 循环表格的行,然后拼接每行里所有需要计算的td,判断拼接后的字符串是否为空或0即可,根据判断是否需要隐藏,从而实现隐藏空行

4.操作步骤

  • 按钮控件–属性(注意控件名,js里用)–事件(点击事件)–js
  • 如图:
    在这里插入图片描述
    在这里插入图片描述

5.页面操作说明

  • 点击【显示空行】按钮,按钮切换为【隐藏空行】
  • 再次点击【隐藏空行】,按钮又切换为【显示空行】
  • 如果没有查询结果或者没有点击查询,点击按钮不含切换

6.截图效果

在这里插入图片描述
在这里插入图片描述

7.注意

  • 主要是语法需要注意
  • //获取表格tr对象 var trObj = $(".x-table tr");
  • 还有 var td = trObj.eq(i).find("td"); var button = this.options.form.getWidgetByName("button0"); 等,这个js里主要的也就这仨了,其他就是逻辑实现,想了解更多帆软js,自己去官网上多了解一下即可

8.附:代码展示

/** 通过遍历表格每行的单元格进行单元格的拼接,来控制表格空行的隐藏* 隐藏的条件:同行里所有的数据列都是 空值/空字符串/0/0.00形式 即隐藏*///获取表格tr对象
var trObj = $(".x-table tr");
//获取tr的行数
var rowsNum = trObj.length;
var hideFlag = false;//控制未查询时,按钮显示值不允许切换
//开始遍历单元格,从第二行开始(表头不遍历)--可根据需求自行修改
for(var i = 1; i < rowsNum; i++) {var td = trObj.eq(i).find("td");var trStrs = "";//用来拼接各行需要遍历的单元格//遍历tr中的对象td,从第二列开始----可根据需求自行修改for(var j = 1; j < td.length; j++) {//_val是每个单元格值var tdValue = td.eq(j).text();//去除空格tdValue = $.trim(tdValue);//判断是否是空,如果不为空弹出单元格值(可根据需要更改)if(tdValue!="" && tdValue!=0){//如果是td是0.0000格式,也可以用0来判断trStrs += tdValue;}}if(trStrs==null || trStrs=="" || trStrs==0){//隐藏空行或者0//alert("隐藏:::"+trStrs);   	   $("#r-"+i+"-0").toggle();hideFlag = true;//是否需要隐藏标志设为true}else{//非0 非空的 不隐藏//alert("展示:::"+trStrs);}}
//点击按钮显示值切换(“隐藏空行”与“显示空行”切换)
var button = this.options.form.getWidgetByName("button0");
//alert(button.getValue());
if((button.getValue()=="隐藏空行") && hideFlag==true){button.setValue("显示空行");
}else{button.setValue("隐藏空行");
}
//buttonValue.setVisible(false);
//$("#fr-btn-BUTTON0").html("显示空行");//注意:控件名button0字母必须大写 这个也可以,但是value值不改变,只改变了页面显示的值,样式也改了

这篇关于帆软: js 控制隐藏空行详解(普通报表)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/701305

相关文章

Mysql 中的多表连接和连接类型详解

《Mysql中的多表连接和连接类型详解》这篇文章详细介绍了MySQL中的多表连接及其各种类型,包括内连接、左连接、右连接、全外连接、自连接和交叉连接,通过这些连接方式,可以将分散在不同表中的相关数据... 目录什么是多表连接?1. 内连接(INNER JOIN)2. 左连接(LEFT JOIN 或 LEFT

Apache Tomcat服务器版本号隐藏的几种方法

《ApacheTomcat服务器版本号隐藏的几种方法》本文主要介绍了ApacheTomcat服务器版本号隐藏的几种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1. 隐藏HTTP响应头中的Server信息编辑 server.XML 文件2. 修China编程改错误

Java中switch-case结构的使用方法举例详解

《Java中switch-case结构的使用方法举例详解》:本文主要介绍Java中switch-case结构使用的相关资料,switch-case结构是Java中处理多个分支条件的一种有效方式,它... 目录前言一、switch-case结构的基本语法二、使用示例三、注意事项四、总结前言对于Java初学者

Linux内核之内核裁剪详解

《Linux内核之内核裁剪详解》Linux内核裁剪是通过移除不必要的功能和模块,调整配置参数来优化内核,以满足特定需求,裁剪的方法包括使用配置选项、模块化设计和优化配置参数,图形裁剪工具如makeme... 目录简介一、 裁剪的原因二、裁剪的方法三、图形裁剪工具四、操作说明五、make menuconfig

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

详解Java中的敏感信息处理

《详解Java中的敏感信息处理》平时开发中常常会遇到像用户的手机号、姓名、身份证等敏感信息需要处理,这篇文章主要为大家整理了一些常用的方法,希望对大家有所帮助... 目录前后端传输AES 对称加密RSA 非对称加密混合加密数据库加密MD5 + Salt/SHA + SaltAES 加密平时开发中遇到像用户的

Springboot使用RabbitMQ实现关闭超时订单(示例详解)

《Springboot使用RabbitMQ实现关闭超时订单(示例详解)》介绍了如何在SpringBoot项目中使用RabbitMQ实现订单的延时处理和超时关闭,通过配置RabbitMQ的交换机、队列和... 目录1.maven中引入rabbitmq的依赖:2.application.yml中进行rabbit

C语言线程池的常见实现方式详解

《C语言线程池的常见实现方式详解》本文介绍了如何使用C语言实现一个基本的线程池,线程池的实现包括工作线程、任务队列、任务调度、线程池的初始化、任务添加、销毁等步骤,感兴趣的朋友跟随小编一起看看吧... 目录1. 线程池的基本结构2. 线程池的实现步骤3. 线程池的核心数据结构4. 线程池的详细实现4.1 初

Python绘制土地利用和土地覆盖类型图示例详解

《Python绘制土地利用和土地覆盖类型图示例详解》本文介绍了如何使用Python绘制土地利用和土地覆盖类型图,并提供了详细的代码示例,通过安装所需的库,准备地理数据,使用geopandas和matp... 目录一、所需库的安装二、数据准备三、绘制土地利用和土地覆盖类型图四、代码解释五、其他可视化形式1.

SpringBoot使用Apache POI库读取Excel文件的操作详解

《SpringBoot使用ApachePOI库读取Excel文件的操作详解》在日常开发中,我们经常需要处理Excel文件中的数据,无论是从数据库导入数据、处理数据报表,还是批量生成数据,都可能会遇到... 目录项目背景依赖导入读取Excel模板的实现代码实现代码解析ExcelDemoInfoDTO 数据传输