如何更改DataTable的语言

我在会话变量中存储用户想要翻译的语言,但我不知道将其传递给DataTables

我在datatables网站上找到了这个解释,但这并没有真正帮助,我在哪里设置语言参数?

您必须创建一个语言文件,然后使用以下命令设置它:

"oLanguage": { "sUrl": "media/language/your_file.txt" } 

我不确定你使用的是哪种服务器语言,但这样的东西可以在PHP中使用:

 "oLanguage": { "sUrl": "media/language/custom_lang_.txt" } 

language与特定语言的文件名匹配。

或更改个人设置:

 "oLanguage": { "sLengthMenu": "Display _MENU_ records per page", "sZeroRecords": "Nothing found - sorry", "sInfo": "Showing _START_ to _END_ of _TOTAL_ records", "sInfoEmpty": "Showing 0 to 0 of 0 records", "sInfoFiltered": "(filtered from _MAX_ total records)" } 

欲了解更多详情,请阅读: http : //datatables.net/plug-ins/i18n

 //Spanish $('#TableName').DataTable({ "language": { "sProcessing": "Procesando...", "sLengthMenu": "Mostrar _MENU_ registros", "sZeroRecords": "No se encontraron resultados", "sEmptyTable": "Ningún dato disponible en esta tabla", "sInfo": "Mostrando registros del _START_ al _END_ de un total de _TOTAL_ registros", "sInfoEmpty": "Mostrando registros del 0 al 0 de un total de 0 registros", "sInfoFiltered": "(filtrado de un total de _MAX_ registros)", "sInfoPostFix": "", "sSearch": "Buscar:", "sUrl": "", "sInfoThousands": ",", "sLoadingRecords": "Cargando...", "oPaginate": { "sFirst": "Primero", "sLast": "Último", "sNext": "Siguiente", "sPrevious": "Anterior" }, "oAria": { "sSortAscending": ": Activar para ordenar la columna de manera ascendente", "sSortDescending": ": Activar para ordenar la columna de manera descendente" } } }); 

还使用cdn:

 //cdn.datatables.net/plug-ins/a5734b29083/i18n/Spanish.json 

更多选择: http : //www.datatables.net/plug-ins/i18n/English [| 西class牙语| 等等]

抱歉恢复这个线程,我知道有解决方案,但很容易用数据表更改语言。 在这里,我给你留下了我自己的数据表示例。

 $(document).ready(function () // DataTable var table = $('#tblUsuarios').DataTable({ aoColumnDefs: [ {"aTargets": [0], "bSortable": true}, {"aTargets": [2], "asSorting": ["asc"], "bSortable": true}, ], "language": { "url": "//cdn.datatables.net/plug-ins/9dcbecd42ad/i18n/Spanish.json" } }); 

您从以下链接获得的语言:

http://cdn.datatables.net/plug-ins/9dcbecd42ad/i18n

只需将语言选项中的URL值替换为您喜欢的值即可。 请记住始终使用逗号


为我工作,希望它对任何人都有用。

最好的祝福!

法语翻译:

 $('#my_table').DataTable({ "language": { "sProcessing": "Traitement en cours ...", "sLengthMenu": "Afficher _MENU_ lignes", "sZeroRecords": "Aucun résultat trouvé", "sEmptyTable": "Aucune donnée disponible", "sInfo": "Lignes _START_ à _END_ sur _TOTAL_", "sInfoEmpty": "Aucune ligne affichée", "sInfoFiltered": "(Filtrer un maximum de_MAX_)", "sInfoPostFix": "", "sSearch": "Chercher:", "sUrl": "", "sInfoThousands": ",", "sLoadingRecords": "Chargement...", "oPaginate": { "sFirst": "Premier", "sLast": "Dernier", "sNext": "Suivant", "sPrevious": "Précédent" }, "oAria": { "sSortAscending": ": Trier par ordre croissant", "sSortDescending": ": Trier par ordre décroissant" } } }); 

});

有一些语言文件在CDN上传,dataTables网站上有语言列表。 因此,您只需要在以下示例中使用您正在使用的任何语言替换“西class牙语”。

https://datatables.net/plug-ins/i18n/Spanish

 $('table.dataTable').DataTable( { language: { url: '//cdn.datatables.net/plug-ins/1.10.15/i18n/Spanish.json' } }); 

阿拉伯语

  var table = $('#my_table') .DataTable({ "columns":{//......} "language": { "sProcessing": "جارٍ التحميل...", "sLengthMenu": "أظهر _MENU_ مدخلات", "sZeroRecords": "لم يعثر على أية سجلات", "sInfo": "إظهار _START_ إلى _END_ من أصل _TOTAL_ مدخل", "sInfoEmpty": "يعرض 0 إلى 0 من أصل 0 سجل", "sInfoFiltered": "(منتقاة من مجموع _MAX_ مُدخل)", "sInfoPostFix": "", "sSearch": "ابحث:", "sUrl": "", "oPaginate": { "sFirst": "الأول", "sPrevious": "السابق", "sNext": "التالي", "sLast": "الأخير" } } }); 

参考: https : //datatables.net/plug-ins/i18n/Arabic

作者:Ossama Khayat

请记住,您必须准确指定您的语言路径.JSON如下:

 language: { url: '/mywebsite/js/localisation/German.json' } 

你好wich文件我必须把这个代码用于法语翻译,我不会真正理解翻译的过程

 $('#userList').DataTable({ "language": { "sProcessing": "Traitement en cours ...", "sLengthMenu": "Afficher _MENU_ lignes", "sZeroRecords": "Aucun résultat trouvé", "sEmptyTable": "Aucune donnée disponible", "sInfo": "Lignes _START_ à _END_ sur _TOTAL_", "sInfoEmpty": "Aucune ligne affichée", "sInfoFiltered": "(Filtrer un maximum de_MAX_)", "sInfoPostFix": "", "sSearch": "Chercher:", "sUrl": "", "sInfoThousands": ",", "sLoadingRecords": "Chargement...", "oPaginate": { "sFirst": "Premier", "sLast": "Dernier", "sNext": "Suivant", "sPrevious": "Précédent" }, "oAria": { "sSortAscending": ": Trier par ordre croissant", "sSortDescending": ": Trier par ordre décroissant" } } 

});

如果您使用的是Angular和Firebase,还可以使用DTOptionsBuilder:

 angular.module('your_module', [ 'ui.router', 'oc.lazyLoad', 'ui.bootstrap', 'ngSanitize', 'firebase']).controller("your_controller", function ($scope, $firebaseArray, DTOptionsBuilder) { var ref = firebase.database().ref().child("your_database_table"); // create a synchronized array $scope.your_database_table = $firebaseArray(ref); ref.on('value', snap => { $scope.dtOptions = DTOptionsBuilder.newOptions() .withOption('language', { "sProcessing": "Traitement en cours...", "sSearch": "Rechercher :", "sLengthMenu": "Afficher _MENU_ éléments", "sInfo": "Affichage de l'élément _START_ à _END_ sur _TOTAL_ éléments", "sInfoEmpty": "Affichage de l'élément 0 à 0 sur 0 élément", "sInfoFiltered": "(filtré de _MAX_ éléments au total)", "sInfoPostFix": "", "sLoadingRecords": "Chargement en cours...", "sZeroRecords": "Aucun élément à afficher", "sEmptyTable": "Aucune donnée disponible dans le tableau", "oPaginate": { "sFirst": "Premier", "sPrevious": "Précédent", "sNext": "Suivant", "sLast": "Dernier" }, "oAria": { "sSortAscending": ": activer pour trier la colonne par ordre croissant", "sSortDescending": ": activer pour trier la colonne par ordre décroissant" } } ) });}) 

我希望这将有所帮助。