如何更改Ajax请求类型和数据

时间:2015-10-16 09:45:12

标签: javascript jquery ajax datatables

我正在使用jQuery DataTables,我有一个通过Ajax请求加载数据的表。 Ajax源正在初始化时设置。

但是,我现在想在强制重新加载Ajax之前将请求类型更改为POST并包含数据对象。

我正在做这样的事情,但它不起作用:

dt.ajax.type = 'POST';
dt.ajax.data = {<some data here>};
dt.ajax.reload();

我只能更改Ajax源URL,但不需要更改。

1 个答案:

答案 0 :(得分:0)

您可以使用ajax选项定义调用$.ajax方法的函数,如下所示:

$('#example').dataTable( {
  "ajax": function (data, callback, settings) {
      if(some_condition){
         data.param1 = "A";
         data.param2 = "B";
      }

      $.ajax( {
         "dataType": "json", 
         "type": (some_condition) ? "GET" : "POST", 
         "url": "/json.php", 
         "data": data, 
         "success": callback
      });
   }
});

每次调用ajax.reload()时,都会在初始化时调用此函数。