2017-08-22 28 views
0

我想從ajax響應加載數據表,然後執行服務器端處理。使用this example使用服務器端處理在數據表中加載自定義響應

這是我從服務器接收響應:

{"msg":null,"code":null,"status":null,"result":[{"aNumber":"3224193861","bNumber":"3215910681","dateTime":"2017-06-05 09:44:22.0","duration":778,"imei":"47350901163665"},{"aNumber":"3224193861","bNumber":"3028540439","dateTime":"2017-04-26 18:53:23.0","duration":266,"imei":"31489802062929"}],"draw":1,"limit":1000,"recordsFiltered":13419,"recordsTotal":13419} 

這是我的JavaScript代碼來處理Ajax和數據表。

function showDataTable(anumber, startdate, enddate) { 
    var cdrReqParams = {}; 
    cdrReqParams.draw = '1'; 
    cdrReqParams.offset = 0; 
    cdrReqParams.newRequest = '1'; 
    cdrReqParams.totalRecords = '1'; 
    cdrReqParams.lookInCol = 'aNumber'; 
    cdrReqParams.lookInVal = anumber; 
    cdrReqParams.fromDate = startdate; 
    cdrReqParams.toDate = enddate; 

    var jsonStr = JSON.stringify(cdrReqParams); 
    console.log(jsonStr); 

    API.call("http://localhost:8050/phpservice/json.php", 'POST', function(data) { 
     basicData = data.result; 
     console.log(basicData); 
     oTable = $("#table").dataTable({ 
      bJQueryUI: true, 
      bPaginate: true, 
      sPaginationType: "full_numbers", 
      bFilter: false, 
      bInfo: false, 
      bProcessing: true, 
      bServerSide: true, 
      aaData: [basicData], 
      aoColumns: [{ 
       "sTitle": "ANUMBER", 
       "mData": "aNumber" 
      }, { 
       "sTitle": "BNUMBER", 
       "mData": "bNumber" 
      }, { 
       "sTitle": "DATETIME", 
       "mData": "dateTime" 
      }, { 
       "sTitle": "DURATION", 
       "mData": "duration" 
      }, { 
       "sTitle": "IMEI", 
       "mData": "imei" 
      }] 
     }); 
    }, function(error) { 
     console.log(error); 
    }, jsonStr); 
} 

通過這樣做,我收到了2個錯誤

數據表警告:表ID =表 - 請求的未知參數 「aNumber的」 0行,列0。有關這個錯誤的詳細信息, 請參閱http://datatables.net/tn/4

無效的JSON響應。

是否有任何解決此類問題的方法,首先,您將執行ajax調用,並從接收到的數據中,您將使用服務器端處理填充數據表?

我希望有人會給我一個提示,至少。

回答

0

隨着數據表1.10,(我想你可能使用的是較早的版本),你可以填充,並在細胞中格式化數據,通過使用columns.data屬性:

columns: [    
      { data: "", defaultContent: " " },    

      { data: null, 
       defaultContent: " ", 
       render: function (data, type, row, meta) { 
           return data.ID; 
       } 
      } 
      ] 
相關問題