2015-05-07 29 views
2

我使用JQuery DataTable與服務器端處理。我已經寫了這個代碼:JQuery DataTable設置默認空搜索回聲參數

public List<VacationRequest> GetVacationRequestsWithProfiles(int displayStart, int displayLength, out int allDataCount, out int filteredDatacount, string searchParam = "", string searchDir = "") 
{ 
.... 

    switch(searchDir) 
       { 
        case "asc": 
         requests = requests.OrderBy(x => x.FirstName).ThenByDescending(x=>x.DateEnd).Skip(displayStart).Take(displayLength); 
         break; 
        case "desc": 
        requests = requests.OrderByDescending(x => x.FirstName).ThenByDescending(x=>x.DateEnd).Skip(displayStart).Take(displayLength); 
         break; 
        default: 
         requests = requests.OrderBy(x=>x.VacationRequestState).ThenByDescending(x=>x.DateEnd).Skip(displayStart).Take(displayLength); 
         break; 
       } 

.... 
} 

問題:我需要得到default(空)的搜索參數,以這種方法,加載頁面時。我如何解決這個問題? 這是JS代碼的一部分:

"aoColumns": [ 
    { "data": "ID", "visible": false, bSortable: false, bSearchable: false }, 
    { "data": "Name" }, 
    { 
     "data": "VacationRequestStatus", 
     bSortable: false, 
     bSearchable: false, 
     "mRender": function (data, type, full) {    
      return '<div class = "' + data + '"> <span class="glyphicon glyphicon-question-sign requested-img"></span> <span class="glyphicon glyphicon-ok accept-img"> </span> <span class="glyphicon glyphicon-remove decline-img"></span> </div>'; 
     } 
    }, 
    { "mData": "Position", bSortable: false, bSearchable: false }, 
    { "mData": "DateStart", bSortable: false, bSearchable: false }, 
    { "mData": "DateEnd", bSortable: false, bSearchable: false }, 
    { 
     bSortable: false, 
     bSearchable: false, 
     data: null, 
     className: "center", 
     defaultContent: '<button class="btn btn-danger decline-button">Decline</button> <button class="btn btn-primary accept-button">Accept</button>' 
    } 
    ] 
+0

我不知道我明白這個問題,它是如何通過你的行動方法,如果不是「」(空字符串)? – ozz

+0

還可以看看DTSharp v用於處理DataTable params的有用插件https://github.com/publiux/DTSharp – ozz

+0

我做到了。有必要檢查我的任務'0'列。 – Alexander

回答

0

,因爲不知道在哪裏ü把AJAX嘗試INE行aoColumns之前添加此命令

"destroy" : true, 
"aoColumns": [ 

這就是命令停止數據顯示在確定年代,但搜索後數據將顯示希望解決你的問題