后台项目中经常会用到 dataTable 进行表格的智能绘制;总结一下项目中经常用到的 dataTable 设置

1.dataTable 属性设置:

autoWidth: true, // 是否自动计算列宽,默认为 true; 如果要  columnDefs  给不同的列设置不同的宽,则 false 处理----注意,如果设置了  true; 浏览器每次刷 datatable  时候,会分配 td 不同的 width; 容易出现抖动的情况!!!!

searching: false, // 取消搜索查询

ordering: false, //取消排序

bInfo: true, //是否显示页脚信息,datatables 插件左下角显示记录数

bProcessing: true, //datatables 载入数据时,是否显示“进度”提示

bPaginate: true, //是否显示分页

pageLength: 20, //页面展示信息数

bSort: true, //是否启动各个字段的排序功能

aaSorting: [[1,"asc"]], //  默认的排序方式,第2列,升序排序

data: [], //  注意。datatable 的数据源是 array  数组!!

---- 汇总列信息 columns ----

columns 是一个数组。有几列就有几个 data;和每一列一一对应。如果没有直接可取的数据:  data: null

columns: [

{"data": "oid"},

{"data":"title"},

{"data":null}

],

---- 具体到每一列  columnDefs ----

columnDefs: [

{

targets: 0,

render: function( data, type, row ) {

  return data;  ----在 columnDefs 里面一定一定要 return ;否则没有数据展示

},

createdCell: function( td, cellData, rowData, row, col ) { ----这一部分是给一列 td 增加属性

  $(td).attr("data-title", cellData)

}

}

],

---- 针对行信息  createdRow ----

createdRow: function( row, data, index ) {

$(row).attr("id", data.id);

$(row).data("oid",data.oid);

},

DATAtable---获取直接父节点  tr
var $tr = $(this).closest("tr");

  

实战中遇到需要针对某一列的所有内容加入 lightGallery 缓动片放映图片/视频的功能

fnDrawCallback: function(oSettings) {

$("#table tbody tr").each(function(){

var lightId = $(this).attr("id");

$("#"+lightId).lightGallery({

thumbnail: true, // 为图库启用缩略图

selector: 'a'

})

})

}
datatable 中,如果根据条件给特定的 td 单元格设置样式
/ createdCell: function( nTd, sData, oData, iRow, iCol ){}
// nTd: 当前单元格DOM 对象; sData: 当前单元格数值 ; oData: 当前行整行的数据对象;iRow:行下标;iCol: 列下标
createdCell: function (nTd,sData,oData,iRow,iCol) {
var font = $(nTd).html()
if(font.indexOf("button") != -1){
$(nTd).addClass("td_error");
}
}
在 "columnDefs:"[{
"targets": 1,
createdCell: function----根据当前获取的 html()内容值,判断条件
}]

  

dataTable 实战总结的更多相关文章

  1. Asp.Net Core 项目实战之权限管理系统(6) 功能管理

    0 Asp.Net Core 项目实战之权限管理系统(0) 无中生有 1 Asp.Net Core 项目实战之权限管理系统(1) 使用AdminLTE搭建前端 2 Asp.Net Core 项目实战之 ...

  2. [转]ASP.NET MVC4+BootStrap 实战(一)

    本文转自:http://leelei.blog.51cto.com/856755/1587301 好久没有写关于web开发的文章了,进到这个公司一直就是winform和Silverlight,实在是没 ...

  3. 升级版:深入浅出Hadoop实战开发(云存储、MapReduce、HBase实战微博、Hive应用、Storm应用)

          Hadoop是一个分布式系统基础架构,由Apache基金会开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力高速运算和存储.Hadoop实现了一个分布式文件系 ...

  4. [原创].NET 业务框架开发实战之八 业务层Mapping的选择策略

    原文:[原创].NET 业务框架开发实战之八 业务层Mapping的选择策略 .NET 业务框架开发实战之八 业务层Mapping的选择策略 前言:在上一篇文章中提到了mapping,感觉很像在重新实 ...

  5. [原创].NET 业务框架开发实战之七 业务层初步构想

    原文:[原创].NET 业务框架开发实战之七 业务层初步构想 .NET 业务框架开发实战之七 业务层初步构想 前言:本篇主要讲述如何把DAL和BLL衔接起来. 本篇议题如下: 1.       DAL ...

  6. [原创].NET 业务框架开发实战之六 DAL的重构

    原文:[原创].NET 业务框架开发实战之六 DAL的重构 .NET 业务框架开发实战之六 DAL的重构 前言:其实这个系列还是之前的".NET 分布式架构开发实战 ",之所以改了 ...

  7. [原创].NET 分布式架构开发实战五 Framework改进篇

    原文:[原创].NET 分布式架构开发实战五 Framework改进篇 .NET 分布式架构开发实战五 Framework改进篇 前言:本来打算这篇文章来写DAL的重构的,现在计划有点改变.之前的文章 ...

  8. .Net反编译实战

    原文:.Net反编译实战 当你面对一个已经部署好的网站,功能,性能都非常不给力的时候,你会怎么办? 当你尝试去了解这个网站业务逻辑,代码逻辑和数据库逻辑时却发现根本没有任何资料时你会怎么办? 当你准备 ...

  9. ActiveReports 9实战教程(2): 准备数据源(设计时、运行时)

    原文:ActiveReports 9实战教程(2): 准备数据源(设计时.运行时) 在上讲中<ActiveReports 9实战教程(1): 手把手搭建环境Visual Studio 2013 ...

随机推荐

  1. swing Jframe 界面风格

    用法:在jframe里面 UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel" ...

  2. eclipse 导入gradle引入多模块项目,引入eclipse后变成了好几个工程

    1.eclipse  导入gradle 项目 ,选择项目文件夹. 2.导入完成后,文档结构变成 ,多个子项目并列了,而且互不依赖,没有层级结构了. 3.点击项目目录,右上角这个小箭头,选择projec ...

  3. linux杀毒软件ClamAV的安装使用

    1.安装依赖环境 yum install -y zlib openssl-devel yum groupinstall -y "Development Tools" apt ins ...

  4. java网络爬虫基础学习(二)

    正则表达式 正则表达式写法 含义 \d 代表0-9的任意数字 \D 代表任何非数字字符 \s 代表空格类字符 \S 代表非空格类字符 \p{Lower} 代表小写字母[a-z] \p{Upper} 代 ...

  5. mongoDB概述

    mongoDB介绍 是一个开源的文档数据库,基于分布式文件存储的数据库.由 C++ 语言编写,并领先的 NoSQL 数据库(非关系型数据库)MongoDB 是由 c++语言编写. MongoDB 是一 ...

  6. SCOI2019酱油记

    这玩意儿咕了--留坑待填

  7. 一、Log4Net配置

    Core的配置 一.创建core包含控制和视图的项目以及Log4Net引用 二.创建Log4Net配置文件 右击项目->添加文件   Log4Net.config 2 复制以下代码 以下配置可做 ...

  8. react 入坑笔记(六) - 组件的生命周期

    React 组件生命周期 详细参考: react 组件生命周期 组件的生命周期可分为三个状态: 1.Mounting:已经挂载/插入到真实 DOM 树上: 2.Updating:正在被重新渲染: 3. ...

  9. CountDownLatch、CyclicBarrier和Semaphore基本原理和使用

    一.CountDownLatch CountDownLatch类位于java.util.concurrent包下,利用它可以实现类似计数器的功能. 比如有一个任务A,它要等待其他4个任务执行完毕之后才 ...

  10. 一个解释volatile关键字最好的例子

    小例子 public class VolatileTest { private static volatile int INIT_VALUE = 0; private final static int ...