后台项目中经常会用到 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. 记一次使用SimpleDateFormat 格式化时间时遇到的问题

    网上的使用方法一大堆,我就不再介绍了,就写一下自己遇到的问题. 先来实现一下获取当前时间: SimpleDateFormat simpleDateFormat =new SimpleDateForma ...

  2. python进阶之生成器

    迭代器 什么叫迭代 可以被for循环的就说明他们是可迭代的,比如:字符串,列表,字典,元祖,们都可以for循环获取里面的数据 下面我们看一个代码: number = 12345 for i in nu ...

  3. com.netflix.zuul.exception.ZuulException: Hystrix Readed time out

    通过API网关路由来访问用户服务,zuul默认路由规则 :http://zuul的Host地址:zuul端口/要调用的服务名/服务方法地址 浏览器中打开http://127.0.0.1:8000/wa ...

  4. 【心得】Lattice和Xilinx工具关键特性对比(Diamond、ISE)

    [博客导航] [导航]FPGA相关 背景 由于项目需要,初次接触Diamond,发现跟之前的ISE有很多不同,记录下一些体会,供参考.按开发流程,将一些常用的特性进行对比,列举如下: IP Core管 ...

  5. 数论 C - Aladdin and the Flying Carpet

    It's said that Aladdin had to solve seven mysteries before getting the Magical Lamp which summons a ...

  6. C# 中如何判断字符串的相似度

    基于 F23.StringSimilarity.dll  组件.Github 上可以搜索到该组件. 核心方法: var l = new Levenshtein(); double tempValue ...

  7. 零代码第一步,做个添加数据的服务先。node.js + mysql

    node.js + mysql 实现数据添加的功能.万事基于服务! 增删改查之添加数据. 优点:只需要设置一个json文件,就可以实现基本的添加功能,可以视为是零代码. 添加数据的服务实现的功能: 1 ...

  8. [题解]ybt1365:FBI树(fbi)

    ybt1365:FBI树(fbi) [题目描述] 我们可以把由“0”和“1”组成的字符串分为三类:全“0”串称为B串,全“1”串称为I串,既含“0”又含“1”的串则称为F串. FBI树是一种二叉树,它 ...

  9. Linux操作系统文件查找

    ++++++++++++++++++++++++++++++++++++++++++++++++标题:Linux操作系统的文件或命令查找内容:命令查找(which和whereis).文件查找(loca ...

  10. OSI七层模型的每一层都有哪些协议

    TCP/IP: 数据链路层:ARP,RARP 网络层: IP,ICMP,IGMP 传输层:TCP ,UDP,UGP 应用层:Telnet,FTP,SMTP,SNMP. OSI: 物理层:EIA/TIA ...