什么是datatables?datatables是一個十分流行的開源插件,可以將普通的HTML表格轉化為功能更加強大的表格。通過調用datatables提供的API,你可以搜索、排序、分頁等。datatables支持服務端和客戶端兩種模式,服務端模式可以解決大數據量的問題,同時也可以提高頁面的加載速度。
當用datatables獲取數據時,很多時候是將服務器返回的JSON數據加載到表格中。這里以服務端模式為例,演示如何返回JSON數據。
<table id="example" class="display" style="width:100%"> <thead> <tr> <th>id</th> <th>姓名</th> <th>年齡</th> <th>性別</th> <th>城市</th> </tr> </thead> </table> $.ajax({ type:'POST', url:'getData.php', success:function(data){ $('#example').DataTable({ "processing": true, "serverSide": true, "ajax": { "url": "getData.php", "data": data }, "columns": [ {"data": "id"}, {"data": "name"}, {"data": "age"}, {"data": "sex"}, {"data": "city"} ] }); } });
如上代碼所示,我們先在頁面中定義一個id為example的表格。在AJAX請求的成功回調函數中,我們調用了DataTable(),它的第一個參數是一個對象,包含了各種配置項,例如:processing表示數據正在處理中,serverSide告知datatables采用服務端處理方式,ajax屬性指定數據源的獲取URL。columns屬性定義了表格列名對應的JSON數據中的屬性名。
至此,我們已經通過返回JSON數據實現了datatables的初始化。這個例子只是對datatables的基本使用進行了演示,實際使用中可能需要更多的配置項進行調整,比如分頁大小、排序方式等。