<logic:notEmpty name="couponlist">
<logic:iterate id="coupon" name="couponlist" indexId="number">
<tr class="tdbg1">
<td> <input id = "priority${number}" type="text" value="${coupon.priority}" /> </td>
<td> <a href = "javascript:modifyPriority(${coupon.id},${number})"> 设定优先级 </a> </td> (读出第几次循环,并将这次循环指定的值传到方法中去)
</tr>
</logic:iterate>
</logic:notEmpty>
//实现方法
<script type="text/javascript">
function modifyPriority(couponId,number) {
var priority = document.getElementById("priority"+number).value;var url = "/couponAdmin.do?action=modifyCouponPriority&couponId="+ couponId + "&priority=" + priority;location.href = url;alert(" 修改成功!");
}</script>
logic:iterate循环,indexId做参数传递使用,表示该集合里的第几个值,等于给集合中的数值加了编号,以上述为例,couponlist集合中的所有参数都用priority来表示,加上indexId之后就弄清楚了取到的具体是哪一个priority.
该标签变成java代码就类似如下 for(int i =0;i<couponlist.size();i++){ } indexId就类似于循环体中的i.