描述(Description)

使用这个参数可以让 DataTables 像使用jQuery ajax 一样从一个数据源获取数据,最终获取到返回的数据

来显示表格,DataTables 支持 JavaScript数组,JSON数据,可以参考

JavaScript数据数据源、

Ajax数据源

当你使用对象数组作为数据源时,你需要使用

columns.dataOption

来匹对对象的属性,

如果使用的是纯数组则不需要使用,DataTables 会默认按照数组的顺序显示每一个行数据

ajax 接收三种类型的参数:

string - 设置获取数据的url

object - 和 jQuery.ajax 定义类似

function- 自定义获取数据的功能

类型(Type)

这个选项能够接受以下类型的参数:

string

这个是最简单的应用,ajax 指定一个返回数据的url,这个是多个形式的比如

json.txt、json.txt、jsonlist.action、jsonlist.jsp、jsonlist.php……

Datatables默认接收的是一个属性为 data,如果你返回的数据不是这样,

你需要使用

ajax.dataSrcOption

来处理

默认的数据(对象)格式如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21//data.json返回数据格式如下

{

"data": [

{ "name": "Tiger Nixon", "position": "System Architect", "salary": "$3,120", "start_date": "2011/04/25", "office": "Edinburgh", "extn": "5421" },

// row 2 data source,

// etc

]

}

//如下代码初始化

$('#example').DataTable({

"ajax": "data.json",

"columns": [

{"data": "name"},

{"data": "position"},

{"data": "salary"},

{"data": "start_date"},

{"data": "office"},

{"data": "extn"}

]

});

默认的数据(数组)格式如下:

1

2

3

4

5

6

7

8

9

10

11

12//data.json返回数据格式如下

{

"data": [

["Tiger Nixon", "System Architect", "Edinburgh", "5421", "2011/04/25", "$3,120"],

......

]

}

//如下代码初始化

$('#example').DataTable( {

"ajax": "data.json"

} );

object

接收一个对象,其用法类同于 jQuery.ajax,

这里只介绍不相同的,没有列出的参考jQuery文档即可,可以同样适用

data (

ajax.dataOption

) - 与jQuery一样,接收一个对象,这里Datatables对他做出扩展,还可以接收 function,作为 function 时可以操作请求参数,在实际应用中,可以在此函数里加入自定义的条件传到服务器。这个方法在1.9-版本中为 fnServerParams。

dataSrc(

ajax.dataSrcOption

) - 如果 DataTables 是通过 ajax 获取取数据,默认情况下,DataTables会去读取返回数据中的 data(在1.9-中是aaData)对象。这个方法已经取代了1.9-中的 sAjaxDataProp

success 这个是在Datatables内部调用的,不能覆盖使用,如果你不满意Datatables的实现,你可以使用

ajax.dataSrcOption

处理,或者是把 ajax 作为一个函数使用(见下面的说明)

一个简单的例子:

1

2

3

4

5

6$('#example').dataTable( {

"ajax": {

"url": "data.json",

"type": "POST"

}

} );

function ajax( data, callback, settings )

描述(Description):

作为一个函数,这个可以完全自己控制Ajax请求,请求参数,返回的数据都可以不受 DataTables 的影响。事实上你可以使用非Ajax请求,而直接使用本地储存。你可以直接从本地数据库获取数据交给 callback 去处理

例子如下:

1

2

3

4

5

6

7$('#example').DataTable( {

"ajax": function (data, callback, settings) {

callback(

JSON.parse( localStorage.getItem('dataTablesData') )

);

}

} );

注意:在1.10.6+, 当使用了 ajax 属性后,

xhrEvent

事件会被触发(即使没有ajax请求)

参数(Parameters):

名称(Name)

类型(Type)

是否可选(Optional)

发送给服务器的数据

2

callback

No

必须被执行,DataTables才能获取到数据;且将返回的数据作为callback()的唯一参数.(参数中可以配置Datatable的页面信息)

Datatables的设置对象

例子(Example)

ajax访问json格式文件获取数据

1

2

3$('#example').DataTable( {

"ajax": "data.json"

} );

更改Ajax的请求方式

1

2

3

4

5

6$('#example').DataTable( {

"ajax": {

"url": "data.json",

"type": "POST"

}

} );

添加额外的参数发送到服务器(注意:下列方式不适用于服务器模式)

1

2

3

4

5

6

7

8$('#example').DataTable( {

"ajax": {

"url": "data.json",

"data": function ( d ) {

d.extra_search = $('#extra').val();

}

}

} );

添加额外的参数发送到服务器(适用服务器模式)

1

2

3

4

5

6

7

8

9

10

11$('#example').DataTable( {

"serverSide":true,

"ajax": {

"url": "data.json",

"data": function ( d ) {

return $.extend( {}, d, {

"extra_search": $('#extra').val()

} );

}

}

} );

操作服务器返回的数据添加链接,这个使用

columns.renderOption

也可以达到效果,这里只是演示怎么操作返回的数据

1

2

3

4

5

6

7

8

9

10

11$('#example').DataTable( {

"ajax": {

"url": "data.json",

"dataSrc": function ( json ) {

for ( var i=0, ien=json.length ; i

json[i][0] = 'View message';

}

return json;

}

}

} );

获取本地的数据

1

2

3

4

5

6

7$('#example').dataTable( {

"ajax": function (data, callback, settings) {

callback(

JSON.parse( localStorage.getItem('dataTablesData') )

);

}

} );

相关属性(Related)

下面的选项是直接相关的,也可能是您的应用程序的开发非常有用。

API

Options

ajax请求数据 ztree_ajax 异步获取数据填充到表格显示(ajax) 文档(Options API) DataTables中文网...相关推荐

  1. vuex异步获取数据_vuex 异步获取数据,却无法渲染页面

    报错信息为 无法获取到program.teacher 返回undefined 但是奇怪的是 program.title 都能获取到..唯独获取不到多层的.. 模拟的数据 { "program ...

  2. ajax异步获取数据后动态向表格中添加数据的页面

    因为某些原因,项目中突然需要做自己做个ajax异步获取数据后动态向表格中添加数据的页面,网上找了半天都没有 看到现成的,决定自己写个例子 1.HTML页面 [html] view plaincopyp ...

  3. ajax异步获取数据后动态向表格中添加数据(行)

    因为某些原因,项目中突然需要做自己做个ajax异步获取数据后动态向表格中添加数据的页面,网上找了半天都没有 看到现成的,决定自己写个例子 1.HTML页面 [html] view plaincopyp ...

  4. node 创建静态web服务器(下)(处理异步获取数据的两种方式)

    接上一章. 上一章我们说创建的静态web服务器只能识别html,css,js文件,功能较为单一,且图片格式为text/html,这是不合理的. 本章,我们将解决该问题. 这里,我们先准备好一个json ...

  5. 揭秘 React 异步获取数据的进化历程

    点击上方 前端瓶子君,关注公众号 回复算法,加入前端编程面试算法每日一题群 本篇文章,以模拟从『Hacker News API[1]』获取热门文章为例,通过一步步地代码优化和封装,阐述 React 异 ...

  6. Vue:echarts画图实战,异步获取数据在Vue上使用echarts进行画图

    Vue:echarts画图实战,异步获取数据在Vue上使用echarts进行画图 一.效果图 二.资源 主题编辑器 ECharts 教程 实现代码------想要进行实战的同学可以研究以下代码,下面的 ...

  7. jq获取内容ajax传递数据库,使用php和jquery ajax从mysql数据库中获取数据

    我想使用php和jquery ajax从mysql数据库中获取数据." process.php"是连接到数据库并获取mysql数据的php文件.当它单独运行时它可以工作,但是当使用 ...

  8. 基于Java毕业设计大数据文章发布系统源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计大数据文章发布系统源码+系统+mysql+lw文档+部署软件 基于Java毕业设计大数据文章发布系统源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 ...

  9. linux获取完整的man(manpages)linux参考手册/中文man的下载和使用/获取buildin 命令的完整帮助文档/多种man手册/man着色colorful man

    文章目录 获取完整的man(manpages)linux参考手册/中文man的下载和使用/获取buildin 命令的完整帮助文档 搜索manpages 相关package 安装扩展man手册 refe ...

最新文章

  1. Tomcat已经启动
  2. php调用mysql库_PHP调用三种数据库的方法(1)
  3. 案例 银行取款 java 1615136927
  4. mysql 创建时间 只能设置一个_在MySQL中创建数据表时,可以设定主键、外键。那么对于一个数据表,能设置的主键和外键个数最多分别是...
  5. labimage 怎样旋转图片_隔断墙见多了,头次见能180旋转任意移动,还多出一面墙来储物...
  6. HibernateTemplate.save()与HibernateTemplate.update() 无法写入数据库的问题
  7. QuartusII-项目工程的时序仿真
  8. 计算机操作系统(第四版)课后习题答案西电版
  9. r语言与数据挖掘最佳实践和经典案例数据_R语言与数据挖掘最佳实践和经典案例...
  10. win10连Android机,Windows10电脑可以和安卓手机无缝连接使用了,实用性干翻Mac-win10手机...
  11. Windows2012安装AppFabric失败返回1603错误的解决方案
  12. 北斗时钟系统(子母钟系统)设计原理架构
  13. linux下nginx配置访问静态图片的解决办法
  14. 五种方法输出大写字母A(c语言)
  15. java jstl 配置_jstl的tld配置
  16. 关于C语言中自增自减
  17. Deliberated Domain Bridging for Domain Adaptive Semantic Segmentation
  18. 炫酷的生日快乐网页 【附带源码】
  19. 迦瓦栈队 团队第六周项目总结
  20. 云计算时代,数据中心运维应该注意哪些问题?

热门文章

  1. GPU Raycasting的两种实现方法
  2. Keras-2 Keras Mnist
  3. 3.15 晚会—「饿了么」之殇
  4. 你怎么看待 Bug?
  5. VMware虚拟机关闭后托盘运行设置
  6. [cocos2dx-lua]Hello Lua分析
  7. 解决:虚拟机能ping通主机,主机ping不通虚拟机
  8. 【Android游戏开发之八】游戏中添加音频-详解MediaPlayer与SoundPoo!并讲解两者的区别和游戏中的用途!...
  9. [蛋蛋无厘头日记]约会ing~~
  10. 日记 [2008年03月23日]不编译内核给iptables增加模块