gpt4 book ai didi

php - 数据表Ajax源

转载 作者:行者123 更新时间:2023-12-01 04:00:49 25 4
gpt4 key购买 nike

我就直接进入正题了。我想要完成的是使用 ajax 填充表格。

这给了我 jquery.dataTables.min.js:39 Uncaught TypeError: Cannot read property 'length' of undefined 错误。

这是我的代码:

我的PHP代码:

public function pending_data(){

$result = $this->ticketing_m->get_pending_tickets();
echo json_encode($result);

}

JQUERY

var datatable = $("#datatable");

datatable.DataTable({
"bProcessing": true,
"bServerSide": true,
"sAjaxSource": datatable.data('url')
});

HTML

 <table id="datatable"  class="table table-striped table-bordered dt-responsive nowrap" cellspacing="0" width="100%" data-url="<?php echo site_url(array("dashboard","pending_data")); ?>">
<thead>
<tr>
<th>Ticket Number</th>
<th>Subject</th>
<th>From</th>
<th>Date Created</th>
</tr>
</thead>
</table>

查询结果 enter image description here

最佳答案

首先,您可能应该将 bServerSide 设置为 false。如果它是true,您需要实际读取请求参数,进行服务器端处理并构建返回数据,如 Server-side processing 中所述。文档。由于您在这里没有做任何这些事情,我假设您只是想使用 Ajax 源数据并让 DataTables javascript 处理表处理

接下来,使用 data 中的表数据构建 json,如下所示 here在示例#2 中。你的 json 应该看起来像这样:

{
"data": [
{
"date_created": "2017-06-13 13:57:24",
"full_name": "John Doe",
"subject": "Test",
"ticket_number": "Ticket 1234"
},
...
]
}

要实现此目的,您可以在 pending_data() 的响应中执行如下简单操作:

echo json_encode(array('data' => $result));

此外,您在此处设置 DataTables 属性的方式看起来您使用的是非常旧的版本或过时的语法。我建议安装最新版本并使用最新代码。您可以在以下位置获取可能需要的所有下载和示例:https://datatables.net

关于php - 数据表Ajax源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44513193/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com