2011-12-21 19 views
3

我使用一個數據表,並允許記錄從數據庫中刪除趕上。刪除後,我重新加載表格以顯示最近的更改。但是,如果我從數據庫中刪除最後一條記錄,那麼AJAX調用將返回null,並且不會更新數據表(它仍會顯示剛刪除的記錄)。JQuery的數據表 - AJAX重裝如何時,沒有返回

我的呼叫進行刪除功能後:

oTable.fnDraw(); 
oTable.fnReloadAjax(); 

控制檯錯誤在這裏:

json.aaData is null 
[Break On This Error] for (var i=0 ; i<json.aaData.length ; i++) 

有沒有辦法來檢測時,沒有從AJAX返回,這樣的數據表可以檢測到沒有記錄並顯示'可空數據'消息(即表中沒有可用數據)?

回答

0

放在一個包裝的JSON數據,並有包裝告訴你,有沒有數據,而不是返回NULL:

{"data":[... your current data ...],"total":0,"success":true} 
0

我懷疑你需要看看你的服務器端代碼,並發現爲什麼aaData是空值。我使用的數據表,當沒有記錄生成的JSON是:

...,"aaData":[],... 

和空消息顯示細膩。

1

好了,所以這個問題是在服務器端,當我的SQL查詢是空它作爲aaData [「aaData」]值返回NULL。

剛剛將該現在它返回一個表就是一句:

if(mysql_num_rows($result)==0){ 
     $aaData = array(); 
     $aaData['aaData']=''; 
     echo json_encode($aaData); 
     exit; 
    }