【发布时间】:2020-12-11 13:39:59
【问题描述】:
我正在使用数据表创建一个表,但在其中呈现数据时遇到了一些问题。我的表结构是。
TABLE_1
|------|------|-------|
| ID | NAME | PHONE |
|------|------|-------|
TABLE_2
|------|------------|----------|
| ID | TABLE_1_ID | CATEGORY |
|------|------------|----------|
这是我的 PHP 代码
$db = new Database; // Database connection
$sql = "SELECT a.*, b.* FROM TABLE_1 a, TABLE_2 b WHERE a.ID = b.TABLE_1_ID";
$exe = $db->select($sql);
$result = array();
foreach ($exe as $rows) {
$result[] = $rows;
}
echo json_encode($result);
这是我的 JavaScript
$('#example').DataTable({
ajax: {
url:"data.php",
dataSrc:""
},
columns: [
{data:"NAME"},
{data:"CATEGORY"}
]
});
到目前为止,一切正常,数据已完美加载。但问题是,假设我在TABLE_1 中只有一行,TABLE_2 中只有 5 行,其中TABLE_1.ID = TABLE_2.TABLE_1_ID 和 bcoz 我的数据表正在生成 5 行,但我想要一个单元格中的所有类别,我只想要1 行而不是 5 行。
我正在考虑在渲染函数中做一些事情,比如
$('#example').DataTable({
ajax: {
url:"data.php",
dataSrc:""
},
columns: [
{data:"NAME"},
{
data:"ID",
render: function(data, type, row){
// Some stuff to render 5 Category in a single cell
// Using the ID from row.ID (maybe)
// how to return 5 CATEGORY in this cell
}
}
]
});
但我真的不知道这个过程,而且 google + stackoverflow + datatables 论坛对我来说有点混乱,因为我不擅长 Javascript。 你们能帮我实现这个吗?我必须在渲染函数中编写什么类型的代码或什么代码才能在单个单元格中显示 5 CATEGORY。 提前致谢。
【问题讨论】:
标签: javascript php ajax datatables server-side