2015-02-04 242 views
0

我想創建一個使用數據表1.10 jQuery插件表。我試圖使用方法:dataTables正確解析json響應從ajax

$(function(){ 
$('#example').dataTable(
{ 
        "ajax":{ 
          url:"getTicketList.php", 
          "columns": [ 
            { "data": "id" }, 
            { "data": "company" } 
          ] 
        } 
}); 
}); 

和getTicketList.php

foreach ($ticketList as $k => $v){ 
    $tickets['data'][$a]['id'] = $v['ticket_id']; 
    $tickets['data'][$a]['company'] = $v['listed_company']; 
    $a++; 
} 
echo json_encode($tickets); 

導致:

{"data":{"1":{"id":"20523","company」:」Acme Inc」},」2」:{「id":"23148","company」:」Walmart」}}} 

和HTML:

<table id="example" class="display" cellspacing="0" width="100%"> 
    <thead> 
     <tr> 
      <th>ID</th> 
      <th>Company</th> 
     </tr> 
    </thead> 

然而我沒有得到任何數據。任何想法爲什麼?這是我在使用數據表第一次嘗試.....

與ChrisV的建議,我現在得到以下錯誤:

DataTables warning: table id=ticketList - Cannot reinitialise DataTable. For more information about this error, please see http://datatables.net/tn/3 

解決。我有一些額外的代碼在頁面上浮動。

+0

是實際輸出(精確複製)的JSON實數部分,或者你寫它爲例?我問它是否包含不同的引號:''''&''' –

+0

該json是一個複製和粘貼,它們的引號語法是正確的,我編輯的值隱藏了什麼數據真的存在 – bart2puck

回答

1

columns屬性應直接出現在.dataTable(聲明中,而不是嵌套在ajax屬性中。

+0

請參閱編輯。 – bart2puck

0

@ChrisV是對的。所以它會像這樣:

<code> 
$(function(){ 
$('#example').dataTable(
{ 
        "ajax":{ 
          url:"getTicketList.php" 
        }, 
         "columns": [ 
            { "data": "id" }, 
            { "data": "company" } 
          ] 
}); 
}); 
</code>