欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

DataTables添加额外的查询参数和删除columns等无用参数实例

程序员文章站 2023-02-25 15:32:57
废话不多说,直接上代码 //1.定义全局变量 var istart = 0, searchparams={}; //2.配置datatable的ajax配...

废话不多说,直接上代码

//1.定义全局变量
var istart = 0, searchparams={};

//2.配置datatable的ajax配置项
"ajax": {
      "url": "/user/query",
      "type": "post",
      //动态请求参数设置,会应用到每次请求
      "data": function (d) {
        //删除多余请求参数
        for(var key in d){
          if(key.indexof("columns")==0||key.indexof("order")==0||key.indexof("search")==0){ //以columns开头的参数删除
            delete d[key];
          }
        }
        //附加查询参数
        if(searchparams){
          $.extend(d,searchparams); //给d扩展参数
        }
      },
      //数据源处理(当数据加载完毕时触发)
      "datasrc": function ( json ) {
        istart = json.start + 1; //起始行号
        return json.data;
      }
    }

//3.查询按钮绑定点击事件
  /**
   * 搜索
   */
  $('.search').click(function () {
    reloadtable();
  });

//4.刷新表格方法
/**
 * 重新加载表格,刷新页码
 */
function reloadtable() {
  //希望搜索一次附加参数,修改搜索条件后,如果不点击搜索按钮,切换页码仍使用上次参数
  var number = $("#number").val();
  var name = $("#name").val();
  searchparams.number = number;
  searchparams.name = name;

  var table = $('#usertable').datatable();
  table.ajax.reload();
}

//5.刷新表格,页码不变方法
/**
 * 刷新表格,不改变页码
 */
function refreshtable() {
  var table = $('#usertable').datatable();
  table.draw(false);
}

//6.跳页实现
$('#example').datatable().page(5).draw(false)
或者
$('#example').datatable().page(5).draw('page')

以上这篇datatables添加额外的查询参数和删除columns等无用参数实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。