若依框架 --- ruoyi 表格的设置
表格
字典值转换
(1) 方式1:使用字典枚举的方式
var isDownload = [[${@dict.getType('YES_OR_NO')}]];{field : 'isDownload',title : '是否允许下载',formatter: function(value, row, index) {return $.table.selectDictLabel(isDownload, value);}
},
(2) 方式2:自定义方法处理,在自定义方法中根据输入值返回指定内容
{field: 'cacheSync',title: '缓存同步结果',formatter: function (value, row, index) {return cacheSyncLabel(value);}
},function cacheSyncLabel(value){return xxx;
}
表格 设置单选/多选
单选/多选通过首列属性控制:
var options = {url: prefix + "/list",clickToSelect:true, //行选中模式columns: [{radio: true //单选//checkbox: true //多选},{xxx}]
}
表格 添加 tooltips
表格自带 tooltips 功能,如下方式使用:
{field: 'aliasName',title: '别名',formatter:function(value,row,index){return $.table.tooltip(value);}
},
但是自带的 tooltips 显示可能存在下面的问题:
1.纯英文/纯数字 显示不全问题: gitee.com/y_project/R…
2.设置展示宽度:gitee.com/y_project/R…
3.无法换行:gitee.com/y_project/R…
表格 内容自动换行
设置不自动换行:gitee.com/y_project/R…
表格 对特定内容行添加背景色
在需要添加背景色的单元格上,添加如下代码即可。但是下面的代码只能控制单个单元格变色,如果想要整行都变色,则需要每个列上都添加。
{field : 'startTime',title : '开始时间',cellStyle: function(value, row, index) {var date = Date.now()if((row.startTime < date)){return {css:{"background-color": "#CAFFFF"}};}else{return {css:{"background-color": "#FFFFFF"}};}}
},
表格 获取选中行的整行数据
很奇怪的是,若依中没有提供获取整行数据的这个功能,不过可以自己修改源码,添加一个。参考:blog.csdn.net/qq_34854237…
在 ry-ui.js 源码中,自己添加方法如下:因为可能选中多行,所以返回的是 row[] 数组。
// 查询表格指定行
selectRow: function() {var rows = $.map($("#" + table.options.id).bootstrapTable('getSelections'), function (row) {return row;});return rows;
},
然后在代码中使用:
// 获取所有选中的行
var rows = $.table.selectRow();
表格 指定字段添加详情超链接
实现功能:直接点击标题即可以进入详情页。
代码如下:
{field : 'title',title : '标题',formatter: function (value, row, index) {var href = "";if (!!value) {href = '<a href="javascript:void(0);" onclick="openDetail('' + row.id + '')"';href += ' >';href += value;href += '</a>';}return href;}
},
当然了,点击方法 openDetail 还要自己去实现一下。
表格 字段值添加徽章
效果如下:
实现代码如下:手动进行判断
{field : 'baseinfoUpadte',title : '内容更新状态',formatter: function(value, row, index) {if (value == 1) { // 已更新return "<span class='badge badge-danger'>" + $.table.selectDictLabel(baseinfoUpadte, value) + "</span>";}return $.table.selectDictLabel(baseinfoUpadte, value);}},
表格 默认查询添加查询条件
如下方式,给表格的列表查询添加额外查询条件。
var options = {url: prefix + "/list",queryParams: queryParams,...
}function queryParams(params) {var search = $.table.queryParams(params);search.columnId = $("#columnId").val();search.datasetId = $("#datasetId").val();return search;
}
表格 按指定字段排序
在需要排序的字段下添加 sortable: true 即可。
{field : 'startTime',title : '开始时间',sortable: true // 该字段支持排序
},
这样,点击排序时,发送的请求会携带排序字段参数,进行查询,非常方便。
表格 表格行按条件默认选中 & 分页记录选中项
如果需要,表格项按条件默认选中,且存在分页,则需要如下处理:
1.全端使用 set 维护所有被选中的记录
// 所有已经选中的, 接收数据
var videoKeywordData = [[${checkVal}]]
// 所有已经选中的, eg: 1-43289, 2-43527
var set = new Set();
// 所有已经选中的影片名字
var nameSet = new Set();
if(!!videoKeywordData){var arr = videoKeywordData.split(",");for(var i = 0; i < arr.length; i++){set.add(arr[i]);}
}
2.表格上增加是否选中的判断,禁用全选
$(function() {var options = {url: prefix + "/videoList",modalName: "影片列表",clickToSelect:true,uniqueId: 'movieId', rememberSelected: true, // 分页记住所选项columns: [{field: 'state', // 名字必须是这个checkbox: true,formatter: function (value, row, index) {// 自己根据条件判断是否需要被选中var key = row.vtype + "-" + row.movieNum;var flag = set.has(key);if(flag){nameSet.add(key + "," + row.movieTitle);return { checked : true };}return { checked : false };}},{field : 'movieNum',title : '影片编码'}]};$.table.init(options);// 禁止全选$("input[name='btSelectAll']").attr("type","hidden"); // 这种方式是不支持全选操作的,没办法处理全选,所以直接禁用
});
3.添加选中/取消选中事件
// 取消选中$("#bootstrap-table").on("uncheck.bs.table uncheck-all.bs.table", function (e, rows) {if(rows.length > 0) {for (var index in rows) {var key = rows.vtype + "-" + rows.movieNum;set.delete(key);nameSet.delete(key + "," + rows.movieTitle);}} else {var key = rows.vtype + "-" + rows.movieNum;set.delete(key);nameSet.delete(key + "," + rows.movieTitle);}});// 选中$("#bootstrap-table").on("check.bs.table check-all.bs.table", function (e, rows) {if(rows.length > 0) {for (var index in rows) {var key = rows.vtype + "-" + rows.movieNum;set.add(key);nameSet.add(key + "," + rows.movieTitle);}} else {var key = rows.vtype + "-" + rows.movieNum;set.add(key);nameSet.add(key + "," + rows.movieTitle);}});
相关文章:

若依框架 --- ruoyi 表格的设置
表格 字典值转换 (1) 方式1:使用字典枚举的方式 var isDownload [[${dict.getType(YES_OR_NO)}]];{field : isDownload,title : 是否允许下载,formatter: function(value, row, index) {return $.table.selectDictLabel(isDownload, value);} }, (2) 方式2&…...

“两会”网络安全相关建议提案回顾
作为新一年的政治、经济、社会等发展的“风向标”,今年“两会”在3月13日顺利闭幕。在今年“两会”期间,多位人大代表也纷纷围绕网络安全、数据安全的未来发展做了提案和建议。 01 “两会”网络安全相关建议和提案回顾 建议统筹智能网联汽车数据收集与共…...

一篇文章带你真正了解接口测试(附视频教程+面试真题)
目录 一、什么是接口测试? 二、为什么要做接口测试? 三、如何开展接口测试? 四、接口测试常见面试题 一、什么是接口测试? 所谓接口,是指同一个系统中模块与模块间的数据传递接口、前后端交互、跨系统跨平台跨数据…...

C/C++每日一练(20230325)
目录 1. 搜索插入位置 🌟 2. 结合两个字符串 🌟 3. 同构字符串 🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/C每日一练 专栏 Java每日一练 专栏 1. 搜索插入位置 给定一个排序数…...

Linux操作系统ARM指令集与汇编语言程序设计
一、实验目的1.了解并掌握ARM汇编指令集2.应用ARM指令集编写一个程序操控开发板上的LED灯二、实验要求应用ARM汇编指令集编写程序,实现正常状态下开发板上的LED灯不亮,按下一个按键之后开发板上的LED灯进入流水灯模式。三、实验原理四个LED灯的电路如下图…...

计网之HTTP协议和Fiddler的使用
文章目录一. HTTP概述和fidder的使用1. 什么是HTTP2. 抓包工具fidder的使用2.1 注意事项2.2 fidder的使用二. HTTP协议格式1. HTTP请求格式1.1 基本格式1.2 认识URL1.3 方法2. 请求报头关键字段3. HTTP响应格式3.1 基本格式3.2 状态码一. HTTP概述和fidder的使用 1. 什么是HTT…...

sql性能优化:MS-SQL(SQL Server)跟踪日志信息结果列字段说明,MSSQL的列字段说明(column)
sql性能优化:MS-SQL(SQL Server)跟踪日志信息结果列字段说明,MSSQL的列字段说明(column) 参考: SQL:BatchCompleted 事件类 | Microsoft Learn SQL 跟踪 | Microsoft Learn sp_trace_setevent (…...
DNS主从复制
#前提准备:关闭SElinux 关闭防火墙 时间同步 #环境说明:Centos7 #ip地址:dns-master:10.0.0.100 dns-slave:10.0.0.103 web:10.0.0.101 主DNS服务配置 1.安装软件包: yum install bind -…...
常见的js加密/js解密方法
常见的js加密/js解密方法 当今互联网世界中,数据安全是至关重要的。为了保护用户的隐私和保密信息,开发人员必须采取适当的安全措施。在前端开发中,加密和解密技术是一种常见的数据安全措施,其中 JavaScript 是最常用的语言之一。…...
6 python函数
函数 在实现某个功能对应的代码的时候,如果将实现功能对应的函数放到函数中,那么下一次再需要这个功能的时候,就可以不用再写这个功能对应的代码,直接调用这个功能对应的函数。 1.什么是函数 函数就是实现某一特点功能的代码的封装…...

7.避免不必要的渲染
目录 1 组件更新机制 2 虚拟DOM配合Diff算法 3 减轻state 4 shouldComponentUpdate() 4.1 基本使用 4.2 使用参数 5 纯组件 5.1 基本使用 5.2 纯组件的比较方法 shallow compere 1 组件更新机制 当父组件重新渲染时,父组件的所有子组件也会重新…...

国产化大趋势下学习linux的必要性
由于国际上的一些国家的制裁和威胁。最近几年国产化大趋势慢慢的兴起,我们国产化硬件的需求越来越大。对国产操作系统的需求也越来越多,那么我们一直用的Windows系统为什么不用了呢?众所周知的原因,不管是最新的Windows11还是正值…...
浅谈虚树
问题引入 你是否遇到过下面这种问题: SDOI2011 消耗战 在一场战争中,战场由 nnn 个岛屿和 n−1n-1n−1 个桥梁组成,保证每两个岛屿间有且仅有一条路径可达。现在,我军已经侦查到敌军的总部在编号为1的岛屿,而且他们已…...
裸机条件下写一个基于时间片轮转的多任务并发程序
目录前言A. 使用RTOSB.裸机多任务并发前言 在学习各种MCU的时候,都是用在main函数里写一个while(1){/* 执行代码 */},这种方式只能一个函数运行完以后再运行另一个函数。 假设需求控制多个模块,如显示屏幕信息的同时控制电机,还要…...
RK3588 系统定制开关机动画
平台:ITX-3588J, ROC-RK3588S-PC 系统:Android12.0 作者:jpchen & zzz 一. 功能描述 定制自己的开机动画和关机动画 二. 功能实现 1.开启功能 修改device/rockchip/common/BoardConfig.mk文件 BOOT_SHUTDOWN_ANIMATION_RINGINGtrue2.…...
水文-编程命令快查手册
前言 脑子里面记不住一些命令,每次遇到都得查下。我经常在三个实体电脑,windows/uos/ubuntu不同系统上编程。 所以web版本的笔记查看起来方便点。这里报错下。 二级标题 cmake windows在cmake --build的时候,使用–config,指定…...

如何优雅编写测试用例
当你学会了如何设计测试用例之后,接下来便是开始用例的编写。 在设计阶段,更准确的说应该是识别测试点的过程,而编写阶段则是将测试点细化成一条条测试用例的过程,有了比较全的用例场景后,如何让别人更舒服、更方便、…...

[入门必看]数据结构2.3:线性表的链式表示
[入门必看]数据结构2.3:线性表的链式表示第二章 线性表2.3 线性表的链式表示知识总览2.3.1 单链表的定义2.3.2_1 单链表的插入删除2.3.2_2 单链表的查找2.3.2_3 单链表的建立2.3.3 双链表2.3.4 循环链表2.3.5 静态链表2.3.6 顺序表和链表的比较2.3.1 单链表的定义单…...

Golang流媒体实战之二:回源
欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 今天的实战是流传输过程中的常见功能:回源如下图,lal(源站)和lal(拉流节点)代表两台电脑,上面都部署了lalVLC在…...

webgl——给场景添加光
文章目录前言光照理论介绍光照效果光源类型反射光颜色向场景中添加光向场景中添加环境光和点光源逐片元光照——更加逼真总结前言 在之前的学习中已经将三维物体添加到了场景中,但是并没有在场景中使用光,照可以使模型更具有立体感,本文主要…...

Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...

(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
rknn优化教程(二)
文章目录 1. 前述2. 三方库的封装2.1 xrepo中的库2.2 xrepo之外的库2.2.1 opencv2.2.2 rknnrt2.2.3 spdlog 3. rknn_engine库 1. 前述 OK,开始写第二篇的内容了。这篇博客主要能写一下: 如何给一些三方库按照xmake方式进行封装,供调用如何按…...

边缘计算医疗风险自查APP开发方案
核心目标:在便携设备(智能手表/家用检测仪)部署轻量化疾病预测模型,实现低延迟、隐私安全的实时健康风险评估。 一、技术架构设计 #mermaid-svg-iuNaeeLK2YoFKfao {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg…...
数据库分批入库
今天在工作中,遇到一个问题,就是分批查询的时候,由于批次过大导致出现了一些问题,一下是问题描述和解决方案: 示例: // 假设已有数据列表 dataList 和 PreparedStatement pstmt int batchSize 1000; // …...

华为OD机试-最短木板长度-二分法(A卷,100分)
此题是一个最大化最小值的典型例题, 因为搜索范围是有界的,上界最大木板长度补充的全部木料长度,下界最小木板长度; 即left0,right10^6; 我们可以设置一个候选值x(mid),将木板的长度全部都补充到x,如果成功…...
Docker拉取MySQL后数据库连接失败的解决方案
在使用Docker部署MySQL时,拉取并启动容器后,有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致,包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因,并提供解决方案。 一、确认MySQL容器的运行状态 …...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL
ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...
大模型真的像人一样“思考”和“理解”吗?
Yann LeCun 新研究的核心探讨:大语言模型(LLM)的“理解”和“思考”方式与人类认知的根本差异。 核心问题:大模型真的像人一样“思考”和“理解”吗? 人类的思考方式: 你的大脑是个超级整理师。面对海量信…...

ABAP设计模式之---“Tell, Don’t Ask原则”
“Tell, Don’t Ask”是一种重要的面向对象编程设计原则,它强调的是对象之间如何有效地交流和协作。 1. 什么是 Tell, Don’t Ask 原则? 这个原则的核心思想是: “告诉一个对象该做什么,而不是询问一个对象的状态再对它作出决策。…...