我正在列出一项体育赛事的结果。每个事件在表中都有自己的行,有些有多个结果,列为 li 项目。人们需要能够过滤结果,因此通过使用复选框,他们可以从列表中消除结果。我通过将类 .gone 添加到这些结果中来做到这一点,这使它们显示:无。但是,如果他们对结果进行了足够的过滤,某些事件将不再有任何可见的结果。如果出现这种情况,我希望表中的完整行显示为:无。
基本上,如果 tr 中的所有 li 都具有 .gone 类,则父 tr 也应该被分配 .gone 类。
我对此有点菜鸟,我在这个网站上尝试了很多不同的例子,但我显然遗漏了一些东西。
这是HTML:
<table width="100%" border="0" cellpadding="5" cellspacing="0">
<tr>
<td valign="top" width="75px"><div id="tableHeader">Date</div></td>
<td valign="top"><div id="tableHeader">Event</div></td>
<td valign="top"><div id="tableHeader">Location</div></td>
</tr>
<tr id="section">
<td valign="top">
<div id="postmeta">3/2/2013</div>
</td>
<td valign="top">
<div class="posttitle" id="post-103">AT&T American Cup</div>
<ul>
<li class="Men"><a href="http://usagym.org/PDFs/Results/m_13ac_final.pdf" target="_new">Men's All-Around</a></li>
<li class="Women"><a href="http://usagym.org/PDFs/Results/w_13ac_final.pdf" target="_new">Women's All-Around</a></li>
</ul>
</td>
<td valign="top">Worcester, Mass.</td>
</tr>
<tr id="section">
<td valign="top">
<div id="postmeta">3/1/2013</div>
</td>
<td valign="top">
<div class="posttitle" id="post-106">Nastia Liukin Cup</div>
<ul>
<li class="Women"><a href="http://usagym.org/PDFs/Results/w_13nlc_final.pdf" target="_new">Final Results</a></li>
</ul>
</td>
<td valign="top">Worcester, Mass.</td>
</tr>
那么,我尝试了什么?很多事情,但这是我最后一次尝试:
if ($("#section ul li.gone").length == $("#section ul li").length) {
// all list items are selected
$('tr').addClass('gone');}
我也为这段代码道歉。这是我在这里的第一篇文章,我试图整理代码格式。
任何帮助是极大的赞赏。这是我正在处理的页面......如果它有帮助的话: http ://dev-public.usagym.org/2013/?cat=7
更新:正如一位响应者指出的那样,我可以检查事件的 li 是否隐藏,如果是,隐藏事件标题。但是,我最初想隐藏 ul 直到有人点击事件标题。我在页面上没有该代码,但我现在有了。