【发布时间】:2013-12-26 18:41:38
【问题描述】:
由于某种我无法弄清楚的原因,我的数据表默认排序不起作用。但是数据显示正确。分页也不起作用。第一列包含图像,但我将其设置为默认不执行任何排序。
非常感谢任何帮助。
这是我正在使用的部分代码:
var oTable = $('#datatables').dataTable( {
"aaSorting": [[2, 'asc']],
"bProcessing": true,
"bServerSide": true,
"sPaginationType": "full_numbers",
"sAjaxSource": "process.php",
"aoColumns": [
{
"mData": null,
"aTargets": [0],
"bSerchable": false,
"bSortable": false,
"sDefaultContent": '<div class="expand /">',
"sWidth": "30px"
},
{
"mDataProp": "email",
"aTargets": [1],
"bSearchable": true,
"bSortable": true
},
{
"mDataProp": "lastName",
"aTargets": [2],
"bSearchable": true,
"bSortable": true
},
{
"mDataProp": "firstName",
"aTargets": [3],
"bSearchable": true,
"bSortable": true
},
{
"mDataProp": "dateRegistered",
"aTargets": [4],
"sClass": "center",
"bSearchable": true,
"bSortable": true
}
]
} );
我刚刚添加了“aTargets”,没有它们也一样。
这是返回 json 数组的文件:
<?php
try {
$conn = require_once 'dbConnect.php';
$sql = "SELECT email, lastName, firstName, dateRegistered, state FROM Users";
$result = $conn->prepare($sql) or die ($sql);
if(!$result->execute()) return false;
if($result->rowCount() > 0) {
$json = array();
while($row = $result->fetch()){
$json[] = array(
'email' => $row['email'],
'lastName' => $row['lastName'],
'firstName' => $row['firstName'],
'dateRegistered' => $row['dateRegistered'],
'state' => $row['state']
);
}
$response = array(
"iTotalRecords" => strval(count($json)),
"iTotalDisplayRecords" => strval(count($json)),
"aaData" => $json
);
echo json_encode($response);
}
} catch(PDOException $e) {
echo 'Error: ' . $e->getMessage();
}
?>
谢谢。
【问题讨论】:
标签: javascript php jquery sorting datatables