layui根据条件让一行数据变色 以及单元格update

本文介绍了一种使用JavaScript和CSS结合layui框架实现表格中数据状态高亮显示的方法。当数据达到特定阈值时,表格行背景将变为红色、橙色或黄色,以直观展示数据的紧急程度。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  done: function (res, page, count) {
            var that = this.elem.next();
            console.log(that)
            res.data.forEach(function (item, index) {
                if (item.count >= 260) {
                    var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']").css("background-color", "#FF0000");
                } else if (item.count >= 220) {
                    var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']").css("background-color", "#FFA500");
                } else if (item.count >= 180) {
                    var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']").css("background-color", "#ffff00");
                }
            });
        }
 // 表格编辑 监听单元格编辑   update
                table.on('edit(scanDetail)', function (obj) {
                    obj.update({
                        hotelName: obj.value
                    });
                });
### 实现 Layui 表格中单元格颜色变化 在 Layui 中修改表格单元格的颜色可以通过自定义样式或使用 `templet` 函数来实现。下面展示两种不同的方法。 #### 方法一:通过 CSS 类控制单元格背景颜色 如果希望基于某些条件改变特定单元格的背景颜色,可以在初始化表格时利用 `templet` 属性配合 JavaScript 来动态添加类名,并预先定义好这些类对应的样式[^3]。 ```html <style> .red-bg { background-color: red !important; } </style> <table id="demo" lay-filter="test"></table> <script> var table = layui.table; table.render({ elem: '#demo', height: 315, cols: [[ { field: 'name', title: '姓名' }, { field: 'score', title: '分数', templet: function(d){ return '<span class="' + (d.score < 60 ? "red-bg" : "") + '">' + d.score + '</span>'; } } ]] }); </script> ``` 此段代码会检查每一行数据对象 `d` 的 `score` 字段值;当成绩低于60分时,则给该单元格应用 `.red-bg` 样式以使其呈现红色背景。 #### 方法二:直接返回带有内联样式的 HTML 片段 另一种更简单的方式是在模板函数里直接返回包含内联样式的HTML片段,这种方式不需要额外定义CSS类: ```javascript { field: 'status', title: '状态', templet: function(data){ let color = data.status === 'active'? 'green':'gray'; return `<div style='color:white;background:${color};text-align:center'>${data.status}</div>`; } } ``` 这段脚本根据 `status` 值的不同赋予不同颜色的文字和背景色[^4]。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值