如何在DataTable中满足条件时为数据行添加Offline文本?
解决方案
当然可以添加“Offline”文本,只需要在标记设备离线的代码块里修改对应单元格内容就行,不会影响现有功能。
修改后的代码如下:
columns: [ { data: 'DisplayDescription'}, { data: 'MessageCount',"visible": false }, ], if(data.MessageCount == 2 ) { const $statusCell = $(row).find('td:eq(0)'); // 保留原位置名称,追加Offline文本 $statusCell.text(`${$statusCell.text()} (Offline)`); // 原有样式、提示和点击逻辑不变 $statusCell.addClass('WayFinderStatusTableOn HeaderStatusWayfinderRedTextBlink'); $(row).attr('title', 'Display screen offline'); $statusCell.on('click', function () { $('#open_offline_help').modal('show'); }); } else if(data.DisplayMainBoard == 0 && data.RecordCount >= 1){ $(row).find('td:eq(0)').addClass('RoomStatusTableOverrideOn') ; }
补充说明
- 先把目标单元格存成变量,避免重复查询DOM,提升效率
- 如果你想给“Offline”单独加样式,比如白字突出,可以改用
html()方法:$statusCell.html(`${$statusCell.text()} <span style="color: white; margin-left: 6px;">Offline</span>`); - 文本格式可以自己调整,比如去掉括号直接写“ Offline”,或者用方括号包裹,按需修改即可。
内容的提问来源于stack exchange,提问作者DCJones
相关产品推荐
相关产品推荐

