【发布时间】:2015-09-02 02:24:52
【问题描述】:
我有这样的 HtmlTable 行:
<tr>
<td class="centertextnowrap"><strong>Description of Expense</strong></td>
<td class="centertext"><label>Date 1: </label><input type="date" id="date1" name="date1"/></td>
<td class="centertext hide"><label>Date 2: </label><input type="date" id="date2" name="date2"/></td>
<td class="centertext hide"><label>Date 3: </label><input type="date" id="date3" name="date3"/></td>
<td class="centertext hide"><label>Date 4: </label><input type="date" id="date4" name="date4"/></td>
<td class="centertext hide"><label>Date 5: </label><input type="date" id="date5" name="date5"/></td>
<td class="centertext hide"><label>Date 6: </label><input type="date" id="date6" name="date6"/></td>
<td class="skybluebackground centertext"><label><strong>Total Expenses</strong></label></td>
<td colspan="4" class="nobordercell centertext"><label>Comments</label></td>
</tr>
我有六个“列”单元格用于 Date1、Date2、... Date6
我想开始只显示 Date1,然后在必要时使其他 Date 列可见。
所以,我创建了一个“隐藏”类:
.hide {
visibility: hidden;
display: none;
}
...适用于除 Date1 之外的所有日期列,如上所示:
<td class="centertext hide"><label>Date 2: </label><input type="date" id="date2" name="date2"/></td>
这适用于隐藏整个列(当然,前提是我用“隐藏”类装饰每一行中的适当 td)。我计划在需要时通过这个 jQuery 使列可见:
if // add a second date column {
$("#date2").removeClass("hide");
$("#airfare2").removeClass("hide");
. . .
$("#totals2").removeClass("hide");
}
响应单击“添加另一个日期”按钮,我可以跟踪“揭幕”的下一列。这似乎是合理的,但可能有点乏味。
有没有更简洁的方法来完成这个?
【问题讨论】:
-
你可以使用
.hasClass()和.next()
标签: javascript jquery html css html-table