数据表:根据值更改单元格颜色

2024-05-02

我正在使用 DataTable 创建交互式表。我有 9 列,其中 5 列是值。我想根据每个单元格的具体情况更改其背景颜色。

我开始尝试首先更改整个行的颜色,因为这似乎是一个更容易的任务。但我无法改变任何事情。

我的代码如下:

<head>  
    <link rel="stylesheet" type="text/css" href="//cdn.datatables.net/1.10.13/css/jquery.dataTables.css">
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
    <script type="text/javascript" charset="utf8" src="//cdn.datatables.net/1.10.13/js/jquery.dataTables.js"></script>      
    
    <script>
        $(document).ready(function(){
            $('#countryTable').DataTable();
        });
    </script>
    
    <script>
        $(document).ready( function () {
        $('#countryTable ').DataTable({
            "fnRowCallback": function( nRow, aData, iDisplayIndex, iDisplayIndexFull ) {
                if ( aData[3] > 11.7 )
                {
                    $(nRow).css('color', 'red')
                }
                else if ( aData[2] == "4" )
                {
                    $(nRow).css('color', 'green')
                }
            }
        });
    </script>
    
</head>

<body>      

    <table id ="countryTable" class="display" cellspacing="0" data-page-length='193'>
<thead>
    <tr>
        <th>Rank</th>
        <th>Country</th>
        <th>Code</th>
        <th>Total</th>
        <th>Beer</th>
        <th>Wine</th>
        <th>Spirits</th>
        <th>Other</th>
        <th>Score</th>
    </tr>
</thead>
<tbody>
    <tr>
        <td>1</td>
        <td>Estonia</td>
        <td>EE</td>
        <td>14.97</td>
        <td>5.87</td>
        <td>1.65</td>
        <td>5.64</td>
        <td>1.81</td>
        <td>3 - Medium Risky</td>
    </tr>
    <tr>
        <td>2</td>
        <td>Belarus</td>
        <td>BY</td>
        <td>14.44</td>
        <td>2.5</td>
        <td>0.75</td>
        <td>6.73</td>
        <td>4.46</td>
        <td>4 - Very Risky</td>
    </tr>
  
</tbody>

我也尝试过使用以下函数,但没有成功。 如果有人能提供帮助,我将不胜感激,因为我对 JavaScript 很陌生。

$(document).ready( function () {
        $('#countryTable').DataTable({
            "fnRowCallback": function( nRow, aData, iDisplayIndex, iDisplayIndexFull ) {
                if ( aData[3] == "5" )
                {
                    $('td', nRow).css('background-color', 'Red');
                }
                else if ( aData[3] == "4" )
                {
                    $('td', nRow).css('background-color', 'Orange');
                }
            }
        });

首先,初始化DataTable只有一次。然后根据你的问题,使用rowCallback并不是fnRowCallBack如下所示:

var oTable = $('#countryTable').DataTable({ 
    'rowCallback': function(row, data, index){
    if(data[3]> 11.7){
        $(row).find('td:eq(3)').css('color', 'red');
    }
    if(data[2].toUpperCase() == 'EE'){
        $(row).find('td:eq(2)').css('color', 'blue');
    }
  }
});

这是一个fiddle https://jsfiddle.net/Lr77dgmt/76/

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数据表:根据值更改单元格颜色 的相关文章

  • DataTables - 不使用 Ajax 扩展子级详细信息

    我正在开发一个使用jquery DataTables 版本1 10 的页面 TableData 源当前仅作为渲染页面上的 HTML 表发送 并且工作正常 不过 我希望能够扩展行以显示详细信息 非常喜欢这个例子Here https datat
  • jQuery 数据表过滤具有特定类的行

    我正在开发一个 jQuery Datatable 项目 我需要根据特定的行类过滤数据 我根据条件在创建行时向行添加类 我试图找出一种方法 让我的用户单击一个按钮 该按钮将应用一个仅显示包含特定类的行的过滤器 我尝试了几种不同的解决方案 但似
  • 使用 ajax 包含子行的闪亮数据表

    我正在尝试使用数据表库来实现更多自定义的闪亮效果 这是我试图做的例子 https datatables net examples api row details html https datatables net examples api
  • 通过 React App 的数据表按钮

    在 React 中工作时 我在尝试添加 Excel 导出按钮时遇到了问题 我认为它与导入有关 但在这方面我在网上找不到太多与 React 和 DataTables net 相关的帮助 我只希望用户能够下载到 Excel 这些是我与 jque
  • 在 Angular 2 中的 Jquery 数据表中绑定按钮事件

    我正在尝试在我的 Angular 2 应用程序中实现 Jquery 数据表 我可以在我的 html 文件中渲染表格 如下所示
  • 如何在 JQuery 数据表中的 SAjaxsource 完成后调用 javascript 函数

    我正在使用 JQuery SAjaxsource 如何在 SAjaxsource 完成后调用 javascript 函数 我想在数据表加载完成后更新一个div 请帮助我 Edit document ready function var oT
  • 如何获取数据表中选定的表格单元格值

    我正在使用 jquery 2 0 3 min js bootstrap min js jquery ui 1 10 3 min js DataTables 1 9 4 和 tabletools datatables net blog Twi
  • 如何在使用 jQuery 添加新行时刷新简单的数据表

    我认为这个很简单 但我找不到与 ajax 加载的数据或数组中提供的数据无关的参考 我在现有的 HTML 表上使用 DataTables 基本代码如下 table wizard dataTable lengthChange false iDi
  • 在 R 中的 DT::datatable 中包含表容器

    我是 HTML 和交互式表格的新手 并且在构建表格容器来为我的数据集添加标题时遇到了麻烦 有没有一种简单的方法可以为我的数据集插入表头 我希望第 2 5 列 不包括第 1 列中的日期 和第 6 9 列分别具有标题 部门 和 行业 我在下面包
  • 数据表行切换选项

    我的问题 我正在开发一个与 DataTableJS 相关的项目 我需要一个行分组功能 它与分组行分开 只是我想在下面的切换中显示相关的表行内容城市名 我到底在寻找什么 我的演示代码 document ready function var t
  • 基于带有图标的列的数据表搜索[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我正在制作一个带有状态列的数据表 我正在考虑提供搜索图标的可能性 因此 如果有人在搜索框中键入 打开 它应该显示带有 打开 图标的所有
  • 从上传的 csv 数据创建 dataTable 列定义

    M 尝试从上传的 csv 文件创建数据表 我面临的唯一问题是定义表列标题 目前我已经这样做了 手动定义标头 var table example DataTable columns title Number data Number title
  • DataTable 破坏了 Nested Repeater 和 Bootstrap

    我遇到了数据表和嵌套重复器的问题 它基本上表明我还没有获得正确匹配的 tr td 标签 然而 我已经按照下面的链接中的 Nested Repeater 教程进行操作 对我来说 HTML 的格式正确 当我检查 DOM 时 一切似乎都很好 该表
  • 列切换按钮不会触发回调操作

    在下面的JSFiddle https jsfiddle net asanchez4096 urd5gquc 每当选择列可见性按钮中选择列的按钮时 操作函数都不会触发 下面是我正在使用的代码 document ready function v
  • 使用 ASP.NET WebForms 的 jQuery DataTables 服务器端处理

    Problem 使用 ASP NET WebForms 的 jQuery DataTables 服务器端处理 解决方案 Darin Dimitrov 使用一个示例回答了这个问题 该示例进行分页和排序 但不进行任何搜索 这是我对他的工作进行的
  • jQuery DataTables 如何应用于 MVC4 中的 AJAX 渲染部分视图?

    我有一个片面的看法 model List
  • 如何从 jQuery DataTable 中的所有页面中选择所有复选框

    我有 HTML 页面 其中有多个复选框 可以单独检查它们 我有 全选 当我单击此按钮时 所有复选框都应被选中 而当我再次单击同一按钮时 所有复选框都应被取消选中从所有页面 在我原来的程序中 有数千条记录 但一次显示 10 条记录 但是当用户
  • 如何使用 JQuery DataTables 根据每个单元格中值的子字符串对列进行排序

    假设我有一列包含格式为 P 的对象标识符 例如 P12 3767 我使用的是 1 9 1 版本的 JQuery数据表插件 http datatables net用于排序和分页 有没有办法可以忽略单元格值的前 4 个字符 P12 部分 以便我
  • 启用scrollX 时标题列与DataTable 不对齐

    我遇到了这个插件反复出现的问题 启用scrollX选项时 标题列未对齐 我尝试了在 stackoverflow 上阅读的许多解决方案 但没有成功 可能是插件版本的问题 但是 这是我的数据表设置 var oTable table dataTa
  • 从 ajax json 填充数据表

    我的表没有填充 我可以看到它正在获取正确的 JSON 收到的 JSON 数据如下所示 id 1 name FooBar predicted 0 points 1 section id 1 detail alias HTML table ta

随机推荐