【发布时间】:2021-12-28 17:55:23
【问题描述】:
我有一个项目列表,其中每个项目都有相关的子项目。我想隐藏子项目,除非单击与它们关联的列表中的项目。但是单击主要项目不会展开该组。有人可以指出我的错误吗? JSfiddle is here。代码如下
<style> .show-kids {display:none;} </style>
<tr>
<td class="main-group">123</td>
</tr>
<tr>
<td>
<table class="show-kids kids-123">
<tr><td>123.111</td></tr>
<tr><td>123.222</td></tr>
<tr><td>123.333</td></tr>
</table>
</td>
</tr>
<script>
$('.main-group').click(function(e) {
var text = $(this).text();
$(".kids-"+text).css("display", "block");
});
</script>
【问题讨论】:
-
问题是因为您的 HTML 格式错误。您需要将最外层的
tr放在table中:jsfiddle.net/mg9op7bf。投票结束是一个印刷问题, -
另请注意,您使用的方法并不理想。更好的方法是使用 DOM 遍历方法将元素相互关联,如下所示:jsfiddle.net/mg9op7bf/2