2012-03-04 4 views
1

В настоящее время я генерации основной таблицы с PHPПолучение содержимого DataTables через AJAX

 <table id="list" class="display"> 
      <thead> 
       <tr id="hdr"> 
        <th><input type="checkbox" id="check_all"/> ID</th> 
        <th>Ref. No</th> 
        <th>Color</th> 
        <th>Size</th> 
        <th>Quantity</th> 
        <th>Stack NO</th> 
        <th>Price</th> 
        <th>Add Date</th> 

       </tr> 
      </thead> 
      <tbody> 
       <?php 
       $result = $db->query("SELECT * FROM `items` ORDER BY id DESC"); 
       if ($result->num_rows > 0) { 

        while ($row = $result->fetch_object()) { 
         echo '<tr url="?page=item&id=' . $row->id . '"> 
<td class="item_id"><input type="checkbox" name="checkbox[]" method="post" value="' . $row->id . '" class="checkbox"/> ' . $row->id . '</td> 
<td> ' . $row->refno . '</td> 
<td style="text-align:center">' . $row->color . '</td> 
<td style="text-align:center">' . $row->size . '</td> 
<td style="text-align:center" id="qt">' . trim($row->qt) . '</td> 
<td style="text-align:center">' . $row->stackno . '</td> 
<td style="text-align:center">' . $row->price . '</td> 
<td>' . date('d.m.Y', strtotime($row->add_date)) . '</td> 
</tr>'; 
        } 
       } 
       ?> 
      </tbody> 
     </table> 

Затем применяющим DataTables в это как то

oTable= $('#list').dataTable({  
     "bJQueryUI": true, 
     "iDisplayLength": 25, 
     "aaSorting": [], 
     "aoColumns": [ 
     { 
      "bSortable": false 
     }, 
     null, null, null,null,null, null, null 
     ]  
    }).columnFilter({ 
     sPlaceHolder: "head:before", 
     aoColumns: [ null, null, null,null,null, null, null, 
     { 
      type: "date-range" 
     } 
     ] 

    }); 

Существует очень большая проблема:

В настоящее время мой таблица имеет около 2000 строк. Для создания и загрузки всей таблицы требуется очень много времени. (Сначала он генерирует данные о файлах applieas). Как я могу изменить этот скрипт, чтобы получать содержимое через ajax по страницам?

ответ

1

Там полностью описаны методы и примеры в DataTables API для использования JSON данных для динамических таблиц с использованием локального или сервера источника

Даже загружаемый пакет включает в себя эти примеры

+0

Согласен; все примеры есть. Мой первый проект с DataTables использовался на стороне сервера, и я никогда не думал о нем как о скрытом; Я искал его, и он был там: http://datatables.net/usage/server-side –

0

Казалось бы, вы должны воспользоваться разбиения на страницы. A quick peak at the documentation для dataTables показывает, что он обеспечивает поддержку наследования для этого.

Существует полнофункциональный пример, который показывает вам, как именно они выглядели, и может быть found here.

Удачи.

+0

Это не просто разбиение на страницы, это все функциональность на стороне сервера. Повреждение деталей самой страницы состоит в том, чтобы пропустить все, что необходимо для серверной обработки. –

Смежные вопросы