渲染插件
数据渲染器可用来将源中某个格式的数据转换为另一种格式。如果你希望自定义用户看到的数据,这会很有用,比如用百分比条显示数字。
DataTables 有三个内置渲染器 (datetime、number 和 text),可以通过下面的插件进行扩展。还可以根据需要创建更多 - 请参阅 这篇博文,了解创建自己的插件的完整说明。
如何使用
数据渲染插件实际上就是应用于 columns.render 选项的函数 (有关更多详细信息,请参见 DataTables 渲染器文档)。加载后,数据渲染插件会附加到 DataTable.render 对象,然后你可以引用该对象以获取 columns.render 选项。
浏览器
在浏览器中直接加载数据渲染插件只需加载插件的 Javascript 即可。例如,下面的代码利用了保存到文件 ellipsis 中的插件
<script type="text/javascript" src="jquery.dataTables.js"></script>
<script type="text/javascript" src="dataTables.ellipsis.js"></script>
<script type="text/javascript">
var table = new DataTable('#myTable', {
columnDefs: [
{
target: 0,
render: DataTable.render.ellipsis(),
},
],
});
</script>
可以在浏览器中包含的插件可从我们的 CDN 中获取。请参阅每个插件的详细信息页面以获取完整的 CDN URL。
ES 模块
数据渲染插件也可作为 ES 模块提供,可以从 datatables.net-plugins 包 (.mjs 文件) 中加载。你需要包含插件所需的。下面我们再次使用 ellipsis 示例
import DataTable from 'datatables.net';
import 'datatables.net-plugins/dataRender/ellipsis.mjs';
var table = new DataTable('#myTable', {
columnDefs: [
{
target: 0,
render: DataTable.render.ellipsis(),
},
],
});
CommonJS
如果你正在使用 CommonJS(即在旧版本的 Node 或 Webpack 中),可以加载 .js 文件,它会自动将插件添加到 DataTables。与 DataTables 内核和扩展一样,CommonJS 加载器会提供你需要使用 window 和 $/jQuery 对象调用的函数 - 例如
var $ = require('jquery');
var DataTable = require('datatables.net')(window, $);
require('datatables.net-plugins/dataRender/ellipsis.js')(window, $);
插件
| 锚 | 将列数据渲染为 HTML 锚 (`a` 标记) |
| datetime | 将日期 / 时间源数据转换为适合显示的日期 / 时间数据 |
| 省略号 | 将输出数据限制到特定长度,显示任何内容 |
| 超链接 | 使用自定义占位符在超链接中显示 url 数据 |
| 国际化 | 使用 Intl Javascript API 渲染日期和数字 |
| 多重 | 使用多个渲染器 |
| 数字转换为 | 将数字转换为波斯语、英语、阿拉伯语。 |
| 百分比条 | 显示百分比值表示为条 |