用于远程域的 JSONP 数据源

JSONP 是允许从任何服务器使用 JSON 数据的几种方法之一(浏览器具有 XSS 保护规则,出于安全原因,这些规则会阻止对远程源的标准 Ajax 请求)。使用 JSONP 允许 DataTables 从任何域加载服务端源数据,而且只需通过 ajax 初始化选项的 dataType 选项即可实现。

当作为对象给定时,ajax 选项直接映射到 jQuery ajax 选项(也就是说,任何可用于 jQuery 的 Ajax 函数的选项也可用于 DataTable 的 ajax 选项)。

以下示例显示了使用 ajax,并将其 dataType 选项设置为,以在 DataTables 中针对服务端处理检索 JSONP 数据。

职位 办公室 起始日期 工资
职位 办公室 起始日期 工资
  • JavaScript
  • HTML
  • CSS
  • Ajax
  • 服务端脚本
  • 备注

要初始化此示例中显示的表,可以使用如下 JavaScript

$('#example').DataTable({ ajax: { url: 'scripts/jsonp.php', dataType: 'jsonp' }, processing: true, serverSide: true });
new DataTable('#example', { ajax: { url: 'scripts/jsonp.php', dataType: 'jsonp' }, processing: true, serverSide: true });

除了以上代码之外,还加载以下 JavaScript 库文件以用于此示例

    要显示此示例,可以使用 HTML 所示的原始 HTML 表元素

    此示例使用少许额外的 CSS,超出从库文件(如下所示)加载的 CSS,以便正确显示表。要显示的额外 CSS 如下所示

    要显示此示例,需要加载以下 CSS 库文件,以便对表进行设置样式

      此表通过 Ajax 加载数据。最新加载的数据如下所示。随着加载任何附加数据,此数据将自动更新。

      要对该表执行服务端处理的脚本如下所示。请注意,这仅仅是使用 PHP 的示例脚本。服务端处理脚本可以使用任何语言编写,而使用的是 DataTables 文档中描述的协议

      其他示例