在我的网络应用程序的一个页面中,我有以下代码:
<c:forEach var="user" items="${usuarios}">
<c:forEach var="auth" items="${autorizacoes}">
<script>
$("#cb_001_${user.id}").click(function(){
$.ajax({
url: "cad_autorizacao.html",
data: { usuario: "${user.id}", autorizacao: "${auth.nome}" },
cache: false
}).done(function(data) {
$("#result_2").show();
$("#result_2").empty().append( data );
$("#result_2").hide(3000);
});
});
</script>
</c:forEach>
</c:forEach>
对此HTML代码采取行动:
<div class="row autorizacoes" id="row_001_${item.id}">
<table class="bordered">
<tr>
<c:forEach var="item_auth" items="${autorizacoes}">
<c:set var="isChecked" value="${false}"/>
<c:forEach var="user_auth" items="${item.autorizacoes}">
<c:if test="${user_auth.nome == item_auth.nome}"> <!-- here compare according ID or any unique attribute -->
<c:set var="isChecked" value="${true}"/>
</c:if>
</c:forEach>
<td>
<input type="checkbox" name="${item_auth.nome}" <c:if test="${isChecked}">checked="checked"</c:if> id="cb_001_${item.id}"/>${item_auth.nome}
</td>
</c:forEach>
</tr>
</table>
</div>
基本上,此代码捕获复选框列表中的单击,并使用两个数据向服务器发送请购单:用户和授权。问题是:当我点击第一个复选框时,数据库中会写入几个授权,当我点击其他复选框时,没有任何反应。
有人可以看到此代码有任何问题吗?
答案 0 :(得分:0)
好的,结束了解决我的问题后,从奥斯卡帕兹的消息中看看模板创建的代码。毕竟,我只对复选框的ID进行了一点改动,包括来自autorization的id,而不是来自用户的id。