JQuery中的DataTables表格插件
一、DataTables表格插件的简介
DataTables是一个jQuery的表格插件。它具有以下特点:
- 自动分页处理
- 即时表格数据过滤
- 数据排序以及数据类型自动检测
- 自动处理列宽度
- 可通过CSS定制样式
- 支持隐藏列
- 易用
- 可扩展性和灵活性
- 国际化
- 动态创建表格
- 免费的
二、DataTables的使用
fnCookieCallback:还没有使用过
$(document).ready(function () {
$('#example').dataTable({
"fnCookieCallback": function (sName, oData, sExpires, sPath) {
// Customise oData or sName or whatever else here
return sName + "=" + JSON.stringify(oData) + "; expires=" + sExpires + "; path=" + sPath;
}
});
});
fnCreatedRow:顾名思义,创建行得时候的回调函数
$(document).ready(function () {
$('#example').dataTable({
"fnCreatedRow": function (nRow, aData, iDataIndex) {
// 为a的话字体加粗
if (aData[4] == "A") {
$('td:eq(4)', nRow).html('<b>A</b>');
}
}
});
});
fnDrawCallback:draw画 ,这个应该是重绘的回调函数
$(document).ready(function () {
$('#example').dataTable({
"fnDrawCallback": function (oSettings) {
alert('DataTables 重绘了');
}
});
});
fnFooterCallback:底部的回调函数,这个可以用来做总计之类的功能
$(document).ready(function() {
$('#example').dataTable({
"fnFooterCallback": function(nFoot, aData, iStart, iEnd, aiDisplay) {
nFoot.getElementsByTagName('th')[0].innerHTML = "Starting index is " + iStart;
}
});
});
fnFormatNumber:顾名思义,格式化数字的显示方式
$(document).ready(function () {
$('#example').dataTable({
"fnFormatNumber": function (iIn) {
if (iIn < 1000) {
return iIn;
} else {
var s = (iIn + ""),
a = s.split(""), out = "",
iLen = s.length;
for (var i = 0; i < iLen; i++) {
if (i % 3 === 0 && i !== 0) {
out = "'" + out;
}
out = a[iLen - i - 1] + out;
}
}
return out;
}
});
});
fnHeaderCallback:表头的回调函数
$(document).ready(function () {
$('#example').dataTable({
"fnHeaderCallback": function (nHead, aData, iStart, iEnd, aiDisplay) {
nHead.getElementsByTagName('th')[0].innerHTML = "Displaying " + (iEnd - iStart) + " records";
}
});
})
fnInfoCallback:datatables信息的回调函数
$('#example').dataTable({
"fnInfoCallback": function (oSettings, iStart, iEnd, iMax, iTotal, sPre) {
return iStart + " to " + iEnd;
}
});
fnInitComplete:datatables初始化完毕后会调用这个方法
$(document).ready(function () {
$('#example').dataTable({
"fnInitComplete": function (oSettings, json) {
alert('DataTables has finished its initialisation.');
}
});
});
fnPreDrawCallback:每一次绘datatables时候调用的方法
$(document).ready(function () {
$('#example').dataTable({
"fnPreDrawCallback": function (oSettings) {
if ($('#test').val() == 1) {
return false;
}
}
});
});
fnRowCallback:行的回调函数
$(document).ready(function () {
$('#example').dataTable({
"fnRowCallback": function (nRow, aData, iDisplayIndex, iDisplayIndexFull) {
// Bold the grade for all 'A' grade browsers
if (aData[4] == "A") {
$('td:eq(4)', nRow).html('<b>A</b>');
}
}
});
});
fnServerData:这个是结合服务器模式的回调函数,用来处理服务器返回过来的数据
// POST data to server
$(document).ready(function () {
$('#example').dataTable({
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "xhr.php",
"fnServerData": function (sSource, aoData, fnCallback, oSettings) {
oSettings.jqXHR = $.ajax({
"dataType": 'json',
"type": "POST",
"url": sSource,
"data": aoData,
"success": fnCallback
});
}
});
});
fnServerParams:向服务器传额外的参数
$(document).ready(function () {
$('#example').dataTable({
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": "scripts/server_processing.php",
"fnServerParams": function (aoData) {
aoData.push({ "name": "more_data", "value": "my_value" });
}
});
});
fnStateLoad:读取状态的回调函数
$(document).ready(function () {
$('#example').dataTable({
"bStateSave": true,
"fnStateLoad": function (oSettings) {
var o;
// Send an Ajax request to the server to get the data. Note that
// this is a synchronous request.
$.ajax({
"url": "/state_load",
"async": false,
"dataType": "json",
"success": function (json) {
o = json;
}
});
return o;
}
});
});
fnStateLoadParams:和上面的不知道什么区别,没用过
// Remove a saved filter, so filtering is never loaded
$(document).ready(function () {
$('#example').dataTable({
"bStateSave": true,
"fnStateLoadParams": function (oSettings, oData) {
oData.oSearch.sSearch = "";
}
});
});
// Disallow state loading by returning false
$(document).ready(function () {
$('#example').dataTable({
"bStateSave": true,
"fnStateLoadParams": function (oSettings, oData) {
return false;
}
});
});
fnStateLoaded:又是这个,加了ed 不知道意思没用过
// Show an alert with the filtering value that was saved
$(document).ready(function () {
$('#example').dataTable({
"bStateSave": true,
"fnStateLoaded": function (oSettings, oData) {
alert('Saved filter was: ' + oData.oSearch.sSearch);
}
});
});
fnStateSave:状态储存
$(document).ready( function() {
$('#example').dataTable({
"bStateSave": true,
"fnStateSave": function(oSettings, oData) {
// Send an Ajax request to the server with the state object
$.ajax({
"url": "/state_save",
"data": oData,
"dataType": "json",
"method": "POST"
"success": function () {
}
});
};
} );
} );
fnStateSaveParams :状态储存参数,没用过,不明白
// Remove a saved filter, so filtering is never saved
$(document).ready(function () {
$('#example').dataTable({
"bStateSave": true,
"fnStateSaveParams": function (oSettings, oData) {
oData.oSearch.sSearch = "";
}
});
});
JQuery中的DataTables表格插件的更多相关文章
- [译]MVC网站教程(四):MVC4网站中集成jqGrid表格插件(系列完结)
目录 1. 介绍 2. 软件环境 3. 在运行示例代码之前(源代码 + 示例登陆帐号) 4. jqGrid和AJAX 5. GridSettings 6. ...
- 在Bootstrap开发框架中使用bootstrapTable表格插件和jstree树形列表插件时候,对树列表条件和查询条件的处理
在我Boostrap框架中,很多地方需要使用bootstrapTable表格插件和jstree树形列表插件来共同构建一个比较常见的查询界面,bootstrapTable表格插件主要用来实现数据的分页和 ...
- jquery DataTables表格插件的使用(网页数据表格化及分页显示)
DataTables - 非常强大的 jQuery 表格插件,可变宽页码浏览,现场过滤. 多列排序,自动探测数据类型,智能列宽,可从几乎任何数据源获取数据. 那么在Bootstrap下如何使用Data ...
- 基于JQuery可拖动列表格插件DataTables的踩坑记
前言 最近项目中在使用能够拖动列调整列位置顺序的表格插件---DataTables,这也是目前我找到的唯一一种存在有这种功能的插件. 在查找使用方法的过程中发现可用案例并不多,且大多言语不详.本文将全 ...
- 使用jQuery开发datatable分页表格插件
当系统数据量很大时,前端的分页.异步获取方式就成了较好的解决方案.一直以来,我都希望使用自己开发的 jquery 插件做系统. 现在,学习了 jquery 插件开发之后,渐渐地也自己去尝试着开发一些简 ...
- jQuery中的each, data, 插件
一. each() $(' ').each(function (){...}) jQuery.each(collection, callback(indexInArray, valueOfEleme ...
- jQuery中的supersized的插件的功能描述
Supersized特性: 自动等比例调整图片并填充整浏览器个屏幕. 循环展示图片,支持滑动和淡入淡出等多种图片切换效果. 导航按钮,支持键盘方向键导航. XHTML <div id=" ...
- jQuery中的工具和插件
jQuery的工具属性 jQuery类数组操作 length属性 表示获取类数组中元素的个数 get()方法 表示获取类数组中单个元素"括号中填写该元素的索引值" index()方 ...
- Datatables快速入门开发--一款好用的JQuery表格插件
博主是一个java后端程序员小白,前端技术会用但不精通,做后台的一些功能经常要涉及表格的展示,分页,搜索,排序等等一系列功能,在经历了一段时间的原始手段,开始接触并使用Datatables,一个jqu ...
随机推荐
- Luogu2858[USACO06FEB]奶牛零食Treats for the Cows (区间DP)
我是个傻逼,这么水的题都会T #include <iostream> #include <cstdio> #include <cstring> #include & ...
- error setting certificate verify locations
描述 在使用 git clone 克隆 GitHub 或者 Gitee 上的项目时,报如下错误: error setting certificate verify locations: CAfile: ...
- Canvas 线性图形(四):矩形
函数 CanvasPath.rect(x, y, w, h) 参数名 类型 描述 x Number 矩形起始位置 y Number 矩形起始位置 w Number 矩形宽度 h Number 矩形高度 ...
- java单线程100%利用率
容器内就获取个cpu利用率,怎么就占用单核100%了呢 背景:这个是在centos7 + lxcfs 和jdk11 的环境上复现的 目前这个bug已经合入到了开源社区, 链接为 https://git ...
- python爬虫之BeautifulSoup4使用
钢铁知识库,一个学习python爬虫.数据分析的知识库.人生苦短,快用python. 上一章我们讲解针对结构化的html.xml数据,使用Xpath实现网页内容爬取.本章我们再来聊另一个高效的神器:B ...
- [CF1538E] Funny Substrings (模拟)
题面 该场 Div. 3 最"难"的一道题:Funny Substrings O I D \tt OID OID 队长喜欢玩字符串,因为 " O n e I n D a ...
- ABC 203 F - Weed (DP)
ABC203F - Weed 题意转述 S t e v e \rm Steve Steve 和 A l e x \rm Alex Alex 正在下界( N e t h e r l e n d \rm ...
- bind搭建内网DNS服务器架构(主从、子域授权、DNS转发器)
实验目的 模拟企业DNS服务架构服务器及原理 实验环境准备 实验架构图 实验设备 DNS服务器4台 主服务器master(centos8):IP_192.168.100.30, 从服务器slave(r ...
- 流媒体协议扫盲(rtp/rtcp/rtsp/rtmp/mms/hls)
RTP 参考文档 RFC3550/RFC3551 Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议详细 ...
- KingbaseES 数据库软件卸载
关键字: KingbaseES.卸载 一.安装后检查 在安装完成后,可以通过以下几种方式进行安装正确性验证: 1. 查看安装日志,确认没有错误记录; 2. 查看开始菜单: 查看应用程序菜单中是否安 ...