我是 JSP 和 servlet 的新手 1 个月,还有很多事情我仍然不确定。在 JSP 中,我有一个下拉列表(里面的值是从数据库中抓取的),它将在数字上动态创建用户键入的。例如,用户键入 3,该数字将存储在会话中,并生成 3 个下拉列表。
我能够做到这一点,但是我无法获取 servlet 中所有 3 个下拉列表的值。而不是获得 3 个差异值,输出重复第一个下拉列表的值。例如“john,john,john”而不是“john, ken, andy”。
JSP代码:
<form action="Adding" method="post">
<%
session = request.getSession();
ProjectGroup projGrp1 = (ProjectGroup)session.getAttribute("PROJECTNAME");
//getMaxMember is the int that user keyed in
int staff =projGrp1.getMaxMember();
for(int i = 0; i < staff; i++) {
%>
<select name="list1" >
<%@page import="sit.bean.*,sit.data.*"%>
<%
GroupTaskManager mgr3 = new GroupTaskManager();
GroupTask[] at3 = mgr3.getCheckBox();
for(int g = 0; g < at3.length; g++) {
%>
<option><%=at3[g].getStaffName()%></option>
<%
}
%>
</select>
<%
}
%>
<input type="submit" name="submit">
</form>
在小服务程序中:
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
HttpSession session = request.getSession();
ProjectGroup projGrp = (ProjectGroup)session.getAttribute("PROJECTNAME");
int member = projGrp.getMaxMember();
String total = null;
for(int i=0; i< member; i++)
{
String names = request.getParameter("list1");
total += names + " , ";
}
PrintWriter pw = response.getWriter();
pw.write("<HTML><BODY>");
pw.write(total);
pw.write("</HTML></BODY>");
pw.close();
}
我可以设置像“list<%i%>”这样的downdownlist名称,为每个downdownlist设置不同的id吗?因此我可以分别检索它们中的每一个???