gpt4 book ai didi

php - Jquery Datatables父子数据

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:47:18 26 4
gpt4 key购买 nike

我正在使用这个 Datatables Demo显示子行。我正在使用 php 返回数组或数据。它运行良好,但有一些问题。

这是我目前拥有的图像。 enter image description here

如您在图片中看到的,有两个父行具有相同的问题,而子行具有不同的答案。

<强>1。我需要一种方法来为每个不同的问题限制一个父行。

<强>2。我还需要一种方法来循环显示同一个子表中的多个子行。

<强>3。另一种选择是如何将数据分配给父行并将另一组数据分配给子行。

我知道我应该在我的查询中这样做,但问题列在两个单独的表中是单个结果到多个结果。使用查询执行此操作的唯一方法是为问题返回一个结果,然后进行另一个 ajax 调用以填充子行。我以为这会更容易。

代码:

表:

<table id="car" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th class="details-control" style="max-width: 80px;">Expand</th>
<th>Question</th>
</tr>
</thead>
<tbody>
</tbody>
<tfoot>
<tr>
<th></th>
<th>Question</th>
</tr>
</tfoot>
</table>

脚本:

 function format(d) {
//d is the original data object for the row
var tbl = '<table cellpadding="5" cellspacing="0" border="0" style="margin-left:110px; width:100%; font-size:12px;">' +
'<tr>' +
'<th style="width:60%; color:3383bb;">Answer Choices</th>' +
'<th style="width:15%; color:3383bb;"># of Answers</th>' +
'<th style="width:15%; color:3383bb;">Percentage</th>' +
'</tr>' + '<tr>' +
'<td>' + d.Answer + '</td>' +
'<td>' + d.NumberOfAnswers + '</td>' +
'<td>' + d.Percent + '</td>' +
'</tr>' + '</table>';
return tbl;
}


var table2 = $('#car').DataTable({
"ajax": "/rmsicorp/clientsite/reset/survey/surveyajax.php",
"scrollY": "400px",
"paging": false,
"bAutoWidth": true,
"columns": [
{
"className": 'details-control',
"orderable": false,
"data": null,
"defaultContent": ''
},
{ "data": "Question" },
],
}).columns.adjust().draw();

查询结果:

enter image description here

问题栏只是针对每个答案重复。其余列是不同的。

最佳答案

这是一个常见问题,您可以在查询端或语言端解决它。在这种情况下,我更喜欢语言方面。您可以尝试做什么:

  1. 按问题文本排序;
  2. 检查最后一个问题和实际问题是否有相同的文本;
  3. 如果是,请将答案添加到实际问题中;
  4. 否则创建一个新的问题条目。

你将不得不编辑你的格式函数来做到这一点,我建议你将它分成两部分,一个是问题标题,一个是答案数据,然后你控制:渲染或不渲染标题。

关于php - Jquery Datatables父子数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31081415/

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