使用jsp在表的一行中只显示四个元素
Display only four elements in a row in table using jsp
我在一行动态生成复选框,但我想在一行中只显示4个复选框,然后在下一行。我试过这个代码,但我无法实现我的目标。请帮帮我吧
<c:forEach var="group" items="${actionBean.roles}" varStatus="loop">
<table>
<tr>
<td><s:checkbox name="category1" id="category${loop.index}" class="category"
onclick="OnChangeCheckbox(this,id)" checked="false"></s:checkbox> <b> <s:label for="${group}" />
</b></td>
</tr>
<tr>
<c:forEach var="item" items="${actionBean.activityroles}">
<c:if test="${not empty actionBean.activityroles && item.label == group }">
<td width="25%"><s:checkbox name="category11" value="${item.id}" class="category${loop.index}"></s:checkbox> <s:label
for="${item.name}" title="${item.description}" /></td>
</c:if>
</c:forEach>
</tr>
</table>
</c:forEach>
在这个代码中,我有一个复选框作为标题,它的子复选框在下一行。都是动态生成的
<script>
function OnChangeCheckbox(checkbox, checkid) {
if (checkbox.checked) {
$('.' + checkid).attr('checked', true);
} else {
$('.' + checkid).attr('checked', false);
}
}
</script>
您可以使用一个变量来检查它是否是第4项,并打破类似的规则。我没有测试下面的代码(它可能有一些语法错误),但它应该是周围,希望它会有所帮助:
<c:forEach var="group" items="${actionBean.roles}" varStatus="loop">
<table>
<tr>
<td colspan="4"><s:checkbox name="category1" id="category${loop.index}" class="category"
onclick="OnChangeCheckbox(this,id)" checked="false"></s:checkbox> <b> <s:label for="${group}" />
</b>
</td>
</tr>
<c:set var="index" value="0"/>
<c:forEach var="item" items="${actionBean.activityroles}" varStatus="s">
<c:if test="${index % 4 eq 0}">
<tr>
</c:if>
<c:if test="${not empty actionBean.activityroles && item.label == group }">
<td width="25%">
<s:checkbox name="category11" value="${item.id}" class="category${loop.index}"></s:checkbox>
<s:label for="${item.name}" title="${item.description}" />
</td>
<c:set var="index">${index + 1}</c:set>
<c:if test="${s.last && index % 4 neq 0}">
<td colspan="${4 - (index % 4)}"> </td>
</c:if>
</c:if>
<c:if test="${index % 4 eq 3 || s.last}">
</tr>
</c:if>
</c:forEach>
</table>
</c:forEach>
相关文章:
- javascript来显示元素属性
- 使用JavaScript或jQuery隐藏和显示元素
- 如何在Angular JS中滚动显示元素
- 如何在使用jQuery应用display:none后正确显示元素
- 仅使用Javascript隐藏/显示元素,而不会弄乱DOM
- jQuery单击并显示元素列表
- 键盘没有在Android和BlackBerry中显示元素焦点
- 在CSS转换期间显示元素的大小值
- 当我们关注jQuery时,只显示元素
- 包含方法和突出显示元素的问题
- JS/JQuery隐藏元素,更改文本,显示元素
- 如何显示元素的一部分,并在单击时切换到所有元素
- 在隐藏元素中显示元素
- 当PROTRACTOR元素后面有元素时,我怎么能知道当前的显示元素
- 在mouseover上显示元素在mouseleave上隐藏
- jquery显示元素是否具有类和特定值的内容
- 不能在复选框旁边显示元素
- 动态显示元素上的JavaScript触摸端;不要开火
- 点击JQuery/HTML5显示元素的索引/位置
- AngularJS:如何默认显示元素,并在按下按钮时切换