【发布时间】:2023-03-12 07:56:01
【问题描述】:
您好,我需要一个表格的展开和折叠功能。网上找到的代码大部分都是for然后在js中为这个tr类定义一个函数。
但是如图所示,我的情况更复杂。点击“参数1”后会展开,显示一个合并单元格和2个单元格。
那么在这种情况下,我该如何实现这个功能呢?提前致谢。
附件是一个简单的sn-p,用于您的测试表:
https://jsfiddle.net/knspgwkq/
测试表的html
<table width="200" border="1">
<tr>
<td rowspan="5">Summary 1</td>
<td colspan="2"><div align="center">1 st level</div></td>
</tr>
<tr>
<td colspan="2"><div class="P1">Parameter 1</div></td>
</tr>
<tr>
<td rowspan="2">Sub level-1 </td>
<td>Sub parameter (1)</td>
</tr>
<tr>
<td>Sub parameter (2)</td>
</tr>
<tr>
<td colspan="2"><div class="P2">Parameter 2</div></td>
</tr>
</table>
JS
$('.P1').click(function(){
$(this).find('span').text(function(_, value){return value=='-'?'+':'-'});
$(this).nextUntil('.P2').slideToggle(100, function(){
});
});
【问题讨论】:
-
嗨@jcubic,我可以知道你在哪里编辑过吗?
-
他添加了标签“jquery”
-
当你有足够的声誉时,你可以只编辑标签。
-
这将在您将 P1 P2 类添加到 tr 元素时起作用
-
@jcubic,有问题因为“参数”是一个
,而不是 : .参数1
标签: javascript jquery html css collapse