国际化(Internationalisation)
Datatables默认的是英语,但是可以很容翻译成其他的语言。
由社区提供的超过50多种语言,让你在Datatables中使用
配置(Configuration)
Datatables中所使用的语言选项是通过 language 来配置的。 这是一个对象字符串,通过一个参数来描述Datatables的每个部分。 语言选项的完整参数可以参考 language 文档。
在Datatables中,语言选项的配置与 其他配置 方式完全相同,作为初始化设置的一部分,这个例子展示了如何修改搜索字符串:
$('#example').DataTable( {
language: {
search: "在表格中搜索:"
}
} );
与其他初始化选项一样,你可以按你所希望的改变尽可能多或尽可能少的选项。那些选项你不赋值,Datatables会使用默认值, 本示例显示每个语言选项,用中文显示Datatables接口:
$('#example').DataTable({
language: {
"sProcessing": "处理中...",
"sLengthMenu": "显示 _MENU_ 项结果",
"sZeroRecords": "没有匹配结果",
"sInfo": "显示第 _START_ 至 _END_ 项结果,共 _TOTAL_ 项",
"sInfoEmpty": "显示第 0 至 0 项结果,共 0 项",
"sInfoFiltered": "(由 _MAX_ 项结果过滤)",
"sInfoPostFix": "",
"sSearch": "搜索:",
"sUrl": "",
"sEmptyTable": "表中数据为空",
"sLoadingRecords": "载入中...",
"sInfoThousands": ",",
"oPaginate": {
"sFirst": "首页",
"sPrevious": "上页",
"sNext": "下页",
"sLast": "末页"
},
"oAria": {
"sSortAscending": ": 以升序排列此列",
"sSortDescending": ": 以降序排列此列"
}
}
});
异步加载翻译(Ajax loading a translation)
为了方便起见,DataTables提供一个选项,用于从服务器Ajax加载语言信息。这个通过 language.url 进行配置,例如:
$('#example').DataTable({
language: {
url: '/localisation/Chinese.json'
}
});
作为与 language 中其他选项一样,Ajax加载文件,可以指定尽可能多或尽可能少的选项,根据需要对Datatables中语言选项进行设置。 任何不指定的选项,将使用Datatables中默认值。
数值型数据的排序(Ordering of numeric data)
数值数据呈现格式往往按照一定的规则,比如将一个给定的字符定义为一个decimal类型,分离器和数字类型的识别,比如货币符号。 DataTables将会自动检测数值型数据类型,比如货币、百分比值和分离器的值。但是默认情况下这些工作用一个点(.)作为十进制数值数据, 如同数值如何在Javascript中表示一样。
DataTables中可以使用通过language.decimal()将任何字符转换成十进制数值数据,提供完整的数值类型为任何形式的数字数据检测和 排序。例如,世界上许多地方使用逗号(,)小数位,Unicode定义了十进制分隔符(?),和一个破折号(-)有时被用于金融文件等等。
通过language.decimal()选项配置,你可以告诉DataTables,在你的表中哪些字段转换成十进制数值数据,并对这些数据进行正确的排序。 与Datatables其他语言参数一样,language.decimal()可以被定义在表的初始化中或者定义在一个语言文件中通过Ajax进行加载(如下所示)。
$('#example').DataTable( {
language: {
decimal: ",",
}
} );
可用的翻译(Available translations)
DataTables社区共同递交了超过50个翻译,可以直接在Datatables中使用。用法参考 plug-ins。
http://datatables.net/manual/i18nTranslation from DataTables.net, with permission