我需要将我在页面上创建的字段添加到Datatables对象.因此,即使它们不是典型的参数(顺序,搜索,分页等),它们也可以与其他Datatables对象状态一起保存和加载.
$(document).ready(function () {
var table = $('#stackoverflow-datatable').DataTable({
"processing": true,"stateSave": true,"stateSaveCallback": function (settings,data) {
$.ajax({
"url": "/api/save_state","data": data,"dataType": "json","success": function (response) {}
});
},"stateLoadCallback": function (settings) {
var o;
$.ajax({
"url": "/api/load_state","async": false,"success": function (json) {
o = json;
}
});
return o;
}
});
});
然后我认为将JS添加到对象的JS …
HTML:
在此先感谢您的帮助.
最佳答案
要实现自定义范围搜索,请使用:
@H_404_53@$.fn.dataTable.ext.search.push
要保存和加载自定义状态参数,请使用:
stateSaveParams: function (settings,data) {}
stateLoadParams: function (settings,data) {}
您必须将事件侦听器附加到日期选择器,以便每次更改开始或结束日期时重新绘制表,但是还必须在恢复表状态时填写输入字段.这可能很棘手,因为拾取器和表之间存在交叉依赖关系,因此我引入了一个自定义事件,以确保在创建后恢复datepickers状态.
我使用静态表创建了一个基于代码的工作示例: