[英]jQuery Datatable serverside reload with new post data
我对所有接受表对象,URL和发布数据的服务器端数据表都有通用功能。 过帐数据由过滤器区域中选择框的值组成。
UTIL.serverDatatable = function (table, api, data) {
var token = "Bearer " + JSON.parse(UTIL.getItemLocalStorage('token'));
return table.DataTable({
"processing": true,
"serverSide": true,
"paging": true,
"ajax": {
url: api,
type: "post",
beforeSend: function (request) {
request.setRequestHeader("Authorization", token);
},
"data": data
}
});
};
还有另一个功能来重新加载数据表
UTIL.datatableReload = function(table) {
table.ajax.reload();
};
在使这些功能通用之前,此方法运行良好。 过滤器发生变化时,后数据发生了变化,之后调用了reload函数。 但是现在,当数据更改时,帖子不会得到更新。 有什么解决办法吗? 如何通过ajax调用发布更改的数据?
更改代码如下
UTIL.serverDatatable = function (table, api, callback) {
var token = "Bearer " + JSON.parse(UTIL.getItemLocalStorage('token'));
return table.DataTable({
"processing": true,
"serverSide": true,
"paging": true,
"ajax": {
url: api,
type: "post",
beforeSend: function (request) {
request.setRequestHeader("Authorization", token);
},
"data": callback
}
});
};
然后按如下所示调用util函数
UTIL.serverDatatable(tablename, apiname, function(data){
data.key= $('#input1').val();
});
然后将函数调用为
UTIL.datatableReload = function(table) {
table.ajax.reload();
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.