datatables应用程序接口API
DataTables 提供的可以操作表格数据的API,有下面六个关键部分:
- 表格(tables)
- 列(Columns)
- 行(Rows)
- 单元格(Cells)
- 核心方法(Core)
- 工具类(Utilities)
Datatables有一个强大的api,用来处理表格上的数据,你可以添加数据到已经存在的表格,或者对已经存在的数据进行操作。 API旨在能够很好地操作表格中的数据。
API实例可以通过以下方式创建:
-
$( selector ).DataTable();
-
$( selector ).dataTable().api();
-
new $.fn.dataTable.Api( selector );
上面三种方式均可返回一个api实例,注意区别
$( selector ).DataTable()
和
$( selector ).dataTable()
前者直接返回API实例,后者返回的是jQuery实例(如果是这个方式初始化Datatables,那么返回的对象不能使用api方法,不然会报方法未定义)
核心(Core)
名称 |
说明 |
---|---|
ajax.reload()API |
重新加载数据源获取数据(不能指定新的数据源) |
ajax.url().load()API |
设置新的url数据源重新加载数据 |
ajax.url()API |
设置新的url数据源 |
draw()API |
重绘表格 |
$()API |
在整个表格里执行(完成)一个 jQuery 选择器操作 |
ajax.json()API |
获得最终的json数据 |
ajax.params()API |
获取最后一次Ajax请求提交的参数 |
ajaxAPI |
ajax方法的命名空间 |
clear()API |
清除表格里所有数据 |
data()API |
获得表格中所有数据 |
destroy()API |
销毁当前上下文中的datatables实例 |
i18n()API |
国际化标签查找 |
off()API |
移除表格的监听事件 |
on()API |
监听表格事件 |
one()API |
第一次监听表格事件,然后移除监听 |
order()API |
获得/设置表格排序 |
order.listener()API |
在一个元素上为一个给定列添加一个排序监听 |
page()API |
获得或者设置表格当前页 |
page.info()API |
获得表格的分页信息 |
page.len()API |
获得或者设置表格的分页长度 |
search()API |
搜索表格里的数据 |
settings()API |
获得表格的settings对象 |
state()API |
得到表格最新存储的状态 |
state.clear()API |
清除表格储存的状态 |
state.loaded()API |
获取初始化期间加载的表状态 |
state.save()API |
触发状态保存操作 |
单元格(Cells)
名称 |
说明 |
---|---|
cell().cache()API |
获取被选择的单元格的缓存数据 |
cell().data()API |
获取/设置被选择的单元格的数据 |
cell().index()API |
获取被选择的单元格的索引信息 |
cell().invalidate()API |
废除被选中单元格保持在DataTables内部数据中的数据 |
cell().node()DT |
获得选中单元格的dom |
cell().render()DT |
获得渲染过的单元格数据 |
cell()DT |
获取表中一个单元格 |
cells().cache()DT |
从缓存里获取选中多个单元格的数据 |
cells().data()DT |
获取选中的多个单元格值 |
cells().indexes()DT |
获得选中的多个单元格的索引信息 |
cells().invalidate()DT |
Invalidate the data held in DataTables for the selected cells |
cells().nodes()DT |
获得选中的多个单元格的dom |
cells().render()DT |
获得渲染过的多个单元格数据 |
cells()DT |
从表格中选择多个单元格 |
列(Columns)
名称 |
说明 |
---|---|
column().cache()DT |
从缓存的数据里获取选中的列 |
column().data()DT |
获取选中列单元格的值 |
column().dataSrc()DT |
获取选中列数据源的属性名 |
column().footer()DT |
获得选中列footer的node |
column().header()DT |
获得选中列header的node |
column().index()DT |
获得选中列的索引 |
column().nodes()DT |
获得选中列所有单元格node |
column().order()DT |
给指定列排序 |
column().search()DT |
在指定列搜索 |
column().visible()DT |
获得那些列隐藏或者设置指定列隐藏 |
column()DT |
在表格上选择一列 |
column.index()DT |
Convert between column index formats(不明白用意) |
columns().cache()DT |
获取表格缓存里被选中的列 |
columns().data()DT |
获取被选中列的单元格数据 |
columns().dataSrc()DT |
获取选中列的数据源属性名称 |
columns().footer()DT |
获取选中列footer的nodes |
columns().header()DT |
获取选中列header的node |
columns().indexes()DT |
获取选中列的索引 |
columns().nodes()DT |
获取选中列单元格nodes |
columns().order()DT |
给选中列排序 |
columns().search()DT |
在指定列搜索 |
columns().visible()DT |
得到隐藏列或者设置隐藏列 |
columns()DT |
从表格选择多列 |
columns.adjust()DT |
重新计算列宽 |
行(Rows)
名称 |
说明 |
---|---|
row().cache()DT |
获取缓存里行的数据 |
row().child().hide()DT |
隐藏子行然后创建一个新的子行 |
row().child().remove()DT |
删除子行 |
row().child().show()DT |
显示子行 |
row().child()DT |
获取子行或者设置子行 |
row().child.hide()DT |
隐藏子行 |
row().child.isShown()DT |
检测子行是否显示 |
row().child.remove()DT |
移除子行 |
row().child.show()DT |
显示子行 |
row().childDT |
子行方法命名空间 |
row().data()DT |
获取行数据或者设置行数据 |
row().index()DT |
获取行的索引 |
row().invalidate()DT |
Invalidate the data held in DataTables for the selected row(不理解) |
row().node()DT |
获得 tr 节点 |
row().remove()DT |
删除行 |
row()DT |
获取一行 |
row.add()DT |
添加一行 |
rows().cache()DT |
获取缓存里的行 |
rows().data()DT |
获取多行数据 |
rows().indexes()DT |
获取多行的索引 |
rows().invalidate()DT |
Invalidate the data held in DataTables for the selected rows(不理解) |
rows().nodes()DT |
获取多个 tr节点 |
rows().remove()DT |
删除多行 |
rows()DT |
多行对象 |
rows.add()DT |
添加多行 |
表格(Tables)
名称 |
说明 |
---|---|
table().body()DT |
得到表格 tbody节点 |
table().container()DT |
得到表格的容器 div ,包括dt所有的控件 |
table().footer()DT |
得到 tfoot节点 |
table().header()DT |
得到 thead节点 |
table().node()DT |
得到 table节点 |
table()API |
基于选择器获得表格的 API 对象 |
tables().body()DT |
得到表格 tbody节点,如果是一次性初始化多个表格,使用类选择器,或者table标签选择初始化,使用下列方法,table()针对单个table,tables()针对多个table |
tables().containers()DT |
得到表格的容器 div ,包括dt所有的控件 |
tables().footer()DT |
得到 tfoot节点 |
tables().header()DT |
得到 thead节点 |
tables().nodes()DT |
得到 table节点 |
tables()DT |
得到table的jquery对象 |
实用(Utility)
名称 |
说明 |
---|---|
any()API |
确定结果集里是否有符合条件的记录(判断表格里有没有数据) |
concat()DT |
Combine multiple API instances to create a single new instance.(没理解) |
each()DT |
遍历结果集 |
eq()DT |
Reduce an Api instance to a single context and result set.(没理解) |
filter()DT |
从结果集中过滤 |
flatten()DT |
把一列或者几列数据从二维数组变成一维数组 |
indexOf()DT |
从结果集中找匹配的值,返回找到个数 |
iterator()DT |
遍历表格、列,行,单元格结果集 |
join()DT |
给结果集数据以字符连接然后返回一个字符串 |
lastIndexOf()DT |
返回与字符相匹配第一次出现的位置(从后往前) |
lengthDT |
返回结果集的长度 |
map()DT |
通过回调函数,创建一个新的结果集 |
pluck()DT |
返回指定属性结果集 |
pop()DT |
从结果集中移除最后一个项目 |
push()DT |
添加一个多个项目到结果集 |
reduce()DT |
遍历结果集,通过回调函数返回从左到右的数据 |
reduceRight()DT |
遍历结果集,通过回调函数返回从右到左的数据 |
reverse()DT |
反转结果集 |
shift()DT |
移除并返回结果集中的第一个 |
sort()DT |
对结果集进行排序 |
splice()DT |
对结果集进行分割 |
to$()DT |
转为jquery实例 |
toArray()DT |
把结果集转换为javascript数组 |
toJQuery()DT |
转为jQuery实例 |
unique()DT |
去重 |
unshift()DT |
在结果集里从头添加一个或多个项目,返回长度 |
静态方法(Static)
名称 |
说明 |
---|---|
$.fn.dataTable.isDataTable()API |
检查一个 table 节点是不是 DataTables 实例 |
$.fn.dataTable.tables()API |
获取该页面上所有的DataTables实例 |
$.fn.dataTable.util.escapeRegex()API |
使用正则表达式转义特殊字符 |
$.fn.dataTable.util.throttle()API |
减少方法调用的频率 |
$.fn.dataTable.versionCheck()API |
版本号兼容性检查 |
参考:
- DataTables 提供的可以操作表格数据的API,有下面六个关键部分:
- 核心(Core)
- 单元格(Cells)
- 列(Columns)
- 行(Rows)
- 表格(Tables)
- 实用(Utility)
- 静态方法(Static)