如何在从PG数据库中获取这些信息的html页面中打印:
A 即可。一个包含许多行的表,其中每个行都有一个或多个子项
乙即可。这些子节点是使用非pk ID从SQL中提取的,其中1-parentID为n-childID
C 即可。并使用子项颜色为父行着色,其中: 如果2个孩子,他们两个都有" ACK = 1" - >父亲是1(颜色为绿色)。 IF 2个孩子,1个是ACK = 1而另一个ACK = -1,父亲是-1(颜色为红色)。
在HTML / PHP / javaApplet / Javascript / Jquery中 - >我对所使用的语言不感兴趣,如果有一天它可以工作将是惊人的。
Excel图片是为了展示我喜欢这张桌子的样子,尝试了一周以上,结果非常糟糕。
RowN-hidden由bootstrap的可折叠面板(或类似)使用。
编辑(2):
我桌子的html代码是:
<table>
<thead>
<th>Expand</th>
<th>Date</th>
<th>Identification</th>
<th>Expedition</th>
<th>Direction</th>
<th>MDN</th>
<th>ACK</th>
</thead>
<tbody>
<tr class=parentrow>
<td>+</td>
<td>27.09.2016</td>
<td>prost</td>
<td>qwa</td>
<td>sent</td>
<td>1</td>
<td>0</td>
</tr>
<tr class=childrow>
<td colspan=9><table><tr>
<td>prost 12 12 1 -1</td></tr>
</table></td></tr>
<tr class=parentrow>
<td>+</td>
<td>24.09.2016</td>
<td>wenon</td>
<td>pra</td>
<td>sent</td>
<td>0</td>
<td>0</td>
</tr>
<tr class=childrow>
<td colspan=9><table><tr>
<td>wenon 32 sent 1 1</td></tr>
<tr><td>wenon 35 sent 1 1</td></tr>
</table></td></tr>
</tbody></table>
父母的ACK和MDN不是孩子的ACK和MDN。
第一个查询将从表1中选择(日期,识别,探险,方向,mdn,ack) 第二个查询将从表2中选择(标识,探险方向,mdn,ack),其中表1的id类似于表2的id。
在这个例子中,html只显示ROW1和ROW2
该按钮将打开一个隐藏的<tr>
,其结果为SQL2(colspan = 9以匹配其父级的长度)。
当孩子的ACK为1或-1时,父母必须继承颜色,而不是值,因为如果他们的ACK是相同的,就会出现这种情况。
如果其中一个孩子有负面的ACK,那么父母应该突出显示为错误(红色)以将注意力集中在孩子身上,我将使用+按钮打开。
在不久的将来,孩子们将拥有更多的价值观,而且可能没有mdn,但ACK将始终保持
答案 0 :(得分:2)
我会假设你的表有这个HTML代码
<table id="tableId">
<thead>
<tr>
<th>Expand</th>
....
<th>ACK</th>
...
<tr>
</thead>
<tbody>
<tr>
<td>4</td>
...
<td class="ACK">0</td>
...
</tr>
....
</tbody>
</table>
据我所知,所有带0值的ACK都是红色,1值是绿色的吗?然后标记所有ACK列tds,如上所述分配class="ACK"
,然后您可以执行以下操作
$(document).ready(function(){
$('.ACK').each(function(index){
var me = $(this);
if(me.text() =='0'){
me.closest('tr').css('background-color','red');
}
else if(me.text()=='1'){
me.closest('tr').css('background-color','green');
}
});
});
这是一个有效的demo
如果您想将ACK与MDN列进行比较,(如果它们相同则为绿色,如果不是则为红色),则可以执行以下操作:
$(document).ready(function(){
$('.ACK').each(function(index){
var me = $(this);
if(me.text() !== me.prev('td').text()){
me.closest('tr').css('background-color','red');
}
else if(me.text()==me.prev('td').text()){
me.closest('tr').css('background-color','green');
}
});
});
这是一个有效的demo
希望这会对你有所帮助