背景:使用 datatables 插件,服務端分頁,post 請求如何添加自定義參數?並攜帶它原有的一些參數,例如 sEcho start 等等..ajax
代碼以下:json
$('#table').DataTable(
{
"pageLength": 10,
"bPaginate" : true,//分頁工具條顯示
//"sPaginationType" : "full_numbers",//分頁工具條樣式
"bStateSave" : true, //是否打開客戶端狀態記錄功能,此功能在ajax刷新紀錄的時候不會將個性化設定回覆爲初始化狀態
"bScrollCollapse" : true, //當顯示的數據不足以支撐表格的默認的高度
"bLengthChange" : true, //每頁顯示的記錄數
"bFilter" : false, //搜索欄
"bSort" : false, //是否支持排序功能
"bInfo" : true, //顯示錶格信息
"bAutoWidth" : true, //自適應寬度
"bJQueryUI" : false,//是否開啓主題
"bDestroy" : true,
"bProcessing" : true, //開啓讀取服務器數據時顯示正在加載中……特別是大數據量的時候,開啓此功能比較好
"bServerSide" : true,//服務器處理分頁,默認是false,須要服務器處理,必須true
"sAjaxDataProp" : "aData",
"sServerMethod": "POST",
"oLanguage": {
"sProcessing": "loading data..."
},
"sAjaxSource" : "請求 url",
"fnServerData": function ( sSource, aoData, fnCallback ) {
aoData.push({name: '自定義參數名', value: 值})
aoData.push({name: '自定義參數名', value: 值})
$.ajax( {
"dataType": 'json',
"type": "POST",
"url": sSource,
"data": aoData,
"success": fnCallback
} );
},
"aoColumns" : [
{
"mDataProp" : ""
},
{
"mDataProp" : ""
}
],
}
);複製代碼