Datatables 同一页上的数据表
我在同一个页面上定义了两个独立的restAPI响应,它们输出正确的值&一旦调用separateley,就会输出正确的数据表,但是对第二个数据表的调用失败。下面是我一直使用的jQuery代码:Datatables 同一页上的数据表,datatables,wordpress-rest-api,Datatables,Wordpress Rest Api,我在同一个页面上定义了两个独立的restAPI响应,它们输出正确的值&一旦调用separateley,就会输出正确的数据表,但是对第二个数据表的调用失败。下面是我一直使用的jQuery代码: <script type="application/javascript"> var site_url='http://www.my-wp-site' var post_object='posts' var page_object='pages' </script&
<script type="application/javascript">
var site_url='http://www.my-wp-site'
var post_object='posts'
var page_object='pages'
</script>
var site\u url=http://www.my-wp-site'
var post_object='posts'
var page_object='pages'
和我的主脚本(为了可读性,数据表定义或多或少都是重复的…):(函数(){
检索到的变量\u对象=后\u对象
var复数形式为“条款”;
var singular='l'物品'
var Singular 2=‘article’
变量表=$('.posts_表')
var table_wrapper=$(“#posts_table_wrapper”)
//发送ajax帖子请求
$.ajax({
url:site_url+'/wp json/wp/v2/'+检索到的_对象,
方法:“GET”,
超时:0,
成功:函数(检索到的对象){
//邮政集装箱要素
table.show();
表.数据表({
数据:检索到的\u对象,
fnServerData:fnDataTablesPipeline,
栏目:[
{data:'title.rendered'},
{data:'link',render:function(数据字段){return';}
],
回答:是的,
pagingType:“完整编号”,
语言:{
“sEmptyTable”:“有争议的画面”,
“sInfo”:“Affichage de”+单数+开始+结束+总计+复数,
“sInfoEmpty”:“Affichage de”+单数+0á0 sur 0”+复数,
“sInfoFiltered”:(过滤部分+复数+总计),
“sInfoPostFix”:“,
“信佛千”:“,”,
“长菜单”:“粘贴菜单”+复数,
“sLoadingRecords”:“收费…”,
“sProcessing”:“叛徒……”,
“搜索”:“搜索”,
“sSearchPlaceholder”:“Votre recherche…”,
“sZeroRecords”:“Aucun”+singular2+“correspondant trouvé”,
“oPaginate”:{
“第一项”:“第三项”,
“sLast”:“,
“sNext”:“,
“以前的”:”
},
“奥里亚”:{
“Soot上升”:“:Acter倒TIER La Calnon Par Orde牛角包”,
“SofftDelEnguts:”:牛角包
},
“选择”:{
“行”:{
“uu”:“%d对齐选择”,
“0”:“Aucune ligne séselectionée”,
“1”:“1路线选择”
}
}
}
} );
},
错误:function(){table_wrapper.html('Il n'y a pas de Pages/Articles…')}
} );
检索到的变量\u对象=页面\u对象
var复数为='pages';
var singular='la page'
var singular2='第页'
变量表=$('.pages_表')
var table_wrapper=$(“#pages_table_wrapper”)
//发送页面的ajax请求
$.ajax({
url:site_url+'/wp json/wp/v2/'+检索到的_对象,
方法:“GET”,
超时:0,
成功:函数(检索到的对象){
//邮政集装箱要素
table.show();
表.数据表({
数据:检索到的\u对象,
栏目:[
{data:'title.rendered'},
{data:'link',render:function(数据字段){return';}
],
回答:是的,
pagingType:“完整编号”,
语言:{
“sEmptyTable”:“有争议的画面”,
“sInfo”:“Affichage de”+单数+开始+结束+总计+复数,
“sInfoEmpty”:“Affichage de”+单数+0á0 sur 0”+复数,
“sInfoFiltered”:(过滤部分+复数+总计),
“sInfoPostFix”:“,
“信佛千”:“,”,
“长菜单”:“粘贴菜单”+复数,
“sLoadingRecords”:“收费…”,
“sProcessing”:“叛徒……”,
“搜索”:“搜索”,
“sSearchPlaceholder”:“Votre recherche…”,
“sZeroRecords”:“Aucun”+singular2+“correspondant trouvé”,
“oPaginate”:{
“第一项”:“第三项”,
“sLast”:“,
“sNext”:“,
“以前的”:”
},
“奥里亚”:{
“Soot上升”:“:Acter倒TIER La Calnon Par Orde牛角包”,
“SofftDelEnguts:”:牛角包
},
“选择”:{
“行”:{
“uu”:“%d对齐选择”,
“0”:“Aucune ligne séselectionée”,
“1”:“1路线选择”
}
}
}
} );
},
错误:function(){table_wrapper.html('Il n'y a pas de Pages/Articles…')}
} );})();
您的总体错误是对两个表使用相同的命名全局变量
Ajax调用是异步的,工作流如下所示:
var createTable=function(检索对象,复数,单数,s
(function() {
var retrieved_object=post_object
var plural='articles';
var singular='l\'article'
var singular2= 'article'
var table= $('.posts_table')
var table_wrapper=$('#posts_table_wrapper')
// sending the ajax request for Posts
$.ajax( {
url: site_url+'/wp-json/wp/v2/'+retrieved_object,
method: 'GET',
timeout: 0,
success: function( retrieved_object ) {
// post container element
table.show();
table.DataTable( {
data: retrieved_object,
fnServerData: fnDataTablesPipeline,
columns: [
{data:'title.rendered'},
{data:'link', render: function (dataField) { return '<a href="' + dataField + '" target="_blank" class="text-decoration-none">Action</a>'; } }
],
responsive:true,
pagingType: "full_numbers",
language:{
"sEmptyTable": "Aucune donnée disponible dans le tableau",
"sInfo": "Affichage de "+singular+" _START_ à _END_ sur _TOTAL_ "+plural,
"sInfoEmpty": "Affichage de "+singular+" 0 à 0 sur 0 "+plural,
"sInfoFiltered": "(filtré à partir de _MAX_ "+plural+" au total)",
"sInfoPostFix": "",
"sInfoThousands": ",",
"sLengthMenu": "Afficher _MENU_ "+plural,
"sLoadingRecords": "Chargement...",
"sProcessing": "Traitement...",
"sSearch": "",
"sSearchPlaceholder":"Votre recherche...",
"sZeroRecords": "Aucun "+singular2+" correspondant trouvé",
"oPaginate": {
"sFirst": " <span class=\"text-decoration-none;\"><i class=\"fa fa-fast-backward\"></i></span> ",
"sLast": " <span class=\"text-decoration-none;\"><i class=\"fa fa-fast-forward\"></i></span> ",
"sNext": " <span class=\"text-decoration-none;\"><i class=\"fa fa-chevron-right\"></i></span> ",
"sPrevious": " <span class=\"text-decoration-none;\"><i class=\"fa fa-chevron-left\"></i></span> "
},
"oAria": {
"sSortAscending": ": activer pour trier la colonne par ordre croissant",
"sSortDescending": ": activer pour trier la colonne par ordre décroissant"
},
"select": {
"rows": {
"_": "%d lignes sélectionnées",
"0": "Aucune ligne sélectionnée",
"1": "1 ligne sélectionnée"
}
}
}
} );
},
error:function(){table_wrapper.html('Il n\'y a pas de Pages / Articles...')}
} );
var retrieved_object=page_object
var plural='pages';
var singular='la page'
var singular2= 'page'
var table= $('.pages_table')
var table_wrapper=$('#pages_table_wrapper')
// sending the ajax request for pages
$.ajax( {
url: site_url+'/wp-json/wp/v2/'+retrieved_object,
method: 'GET',
timeout: 0,
success: function( retrieved_object ) {
// post container element
table.show();
table.DataTable( {
data: retrieved_object,
columns: [
{data:'title.rendered'},
{data:'link', render: function (dataField) { return '<a href="' + dataField + '" target="_blank" class="text-decoration-none">Action</a>'; } }
],
responsive:true,
pagingType: "full_numbers",
language:{
"sEmptyTable": "Aucune donnée disponible dans le tableau",
"sInfo": "Affichage de "+singular+" _START_ à _END_ sur _TOTAL_ "+plural,
"sInfoEmpty": "Affichage de "+singular+" 0 à 0 sur 0 "+plural,
"sInfoFiltered": "(filtré à partir de _MAX_ "+plural+" au total)",
"sInfoPostFix": "",
"sInfoThousands": ",",
"sLengthMenu": "Afficher _MENU_ "+plural,
"sLoadingRecords": "Chargement...",
"sProcessing": "Traitement...",
"sSearch": "",
"sSearchPlaceholder":"Votre recherche...",
"sZeroRecords": "Aucun "+singular2+" correspondant trouvé",
"oPaginate": {
"sFirst": " <span class=\"text-decoration-none;\"><i class=\"fa fa-fast-backward\"></i></span> ",
"sLast": " <span class=\"text-decoration-none;\"><i class=\"fa fa-fast-forward\"></i></span> ",
"sNext": " <span class=\"text-decoration-none;\"><i class=\"fa fa-chevron-right\"></i></span> ",
"sPrevious": " <span class=\"text-decoration-none;\"><i class=\"fa fa-chevron-left\"></i></span> "
},
"oAria": {
"sSortAscending": ": activer pour trier la colonne par ordre croissant",
"sSortDescending": ": activer pour trier la colonne par ordre décroissant"
},
"select": {
"rows": {
"_": "%d lignes sélectionnées",
"0": "Aucune ligne sélectionnée",
"1": "1 ligne sélectionnée"
}
}
}
} );
},
error:function(){table_wrapper.html('Il n\'y a pas de Pages / Articles...')}
} );})();
var retrieved_object=post_object
var plural='articles';
var singular='l\'article'
var singular2= 'article'
var table= $('.posts_table')
var table_wrapper=$('#posts_table_wrapper')
var retrieved_object2=page_object
var plural2='pages';
var singular2='la page'
var singular22= 'page'
var table2= $('.pages_table')
var table_wrapper2=$('#pages_table_wrapper')