前接jQuery Plugin : DataTables (2)
經過前面的測試,雖然可以改變資料來源為動態而非固定值,但馬上遇到回傳格式的問題。
看看先前回傳的資料
{"aaData":[ ["A123","Adam","0910"], ["B123","Bob","0819"], ["C123","Child","0739"] ]}
這不就代表我Server端輸出時還要考慮property的順序?
所以當然要試著讓DataTables可以動態的指定每個column要顯示的property.
這就必需在兩邊都有改動。
Server端回傳的格式要改,像是下列這樣
{"aaData":[ {"id":"A123","name":"Adam","phone":"0910"}, {"id":"B123","name":"Bob","phone":"0819"}, {"id":"C123","name":"Child","phone":"0739"} ]}
而在Client這端,也必需在呼叫datatable()時,以aoColumns + mDataProp 來設定每個column要顯示的property.
"aoColumns": [ { "mDataProp": "id" }, { "mDataProp": "name" }, { "mDataProp": "phone" } ]
所以只要用下列的script來處理,就可以達到基本的使用需求
<script type="text/javascript"> $().ready(function() { $("#sample").dataTable({ "sAjaxSource": './serverdata.txt', "aoColumns": [ { "mDataProp": "id" }, { "mDataProp": "name" }, { "mDataProp": "phone" } ] }); }); </script>
再仔細確認看看,目前所有的操作仍是停留在Client端,接下來就要處理換頁時的Server端呼叫
沒有留言:
張貼留言