2010-07-06 147 views
1

我必须在每个组下面显示许多组和许多产品。为了传递它们,我使用JSTL来迭代组列表中的产品列表。 用户可以通过单击收音机从每个组中选择一种产品。为了实现这个功能,我添加了无线电名称的组ID,以便用户可以选择多个无线电。多个单选按钮选择

如何从servlet中获取选定的收音机?因为名称是动态创建的。

<c:forEach items="${pgb.tableValues}" var="tv"> 
    <tr> 
    <c:forEach items="${tv}" var="tvalue"> 
     <c:if test="${tvalue.type != null && not empty(tvalue.type)}"> 
      <td> 
      <c:if test="${tvalue.type=='radio'}"> 
       <input type="radio" value="${tvalue.id}" name="selectedProd${pgb.id}"/> 
      </c:if> 
      <c:if test="${tvalue.image != null}"> 
       <img src="${tvalue.image}" alt="image"/> 
      </c:if> 
      ${tvalue.text} 
      </td> 
     </c:if> 
    </c:forEach> 
    </tr> 
</c:forEach> 

还是有一些更好的方法来做到这一点?

+0

找到了一种方法..枚举通过parameternames并找到无线电与String.startswith() :) – coder247 2010-07-06 09:56:34

回答

1

只需按照您在HTML中指定的名称获取它们即可。

String selected = request.getParameter("selectedProd" + pgb.getId()); 

顺便说一句,在${tvalue.type != null && not empty(tvalue.type)}可缩短至${not empty tvalue.type}empty也检查null