如何从Servlet中的列表框中获取选定的值?

时间:2017-12-14 09:15:35

标签: jsp servlets listbox httprequest

在servlet中,我想获取由JSP呈现的列表框选定值:

<td width="50%" type="text"  size="10">
    <select name="famille">
        <% while (rst.next()) {%>
            <option value="<%=rst.getString(1)%>" selected="selected">
                <%=rst.getString(1)%>
            </option>
        <% } %>
    </select>
</td>

Servlet代码:

String famille = request.getParameter("famille");
System.out.println("famille      "+famille);

仅打印第一个项目。我怎么得到其余的?

1 个答案:

答案 0 :(得分:0)

在您的JSP中,根据select multiple,HTML代码需要multiple属性:

<td width="50%" type="text"  size="10">
    <select name="famille" multiple> <!-- `multiple` needed here -->
        <% while (rst.next()) {%>
            <option value="<%=rst.getString(1)%>" selected="selected">
                <%=rst.getString(1)%>
            </option>
        <% } %>
    </select>
</td>

在Servlet代码中,您需要使用多参数API调用:

String[] famille = request.getParameterValues("famille"); // Returns an array
System.out.println("famille      " + java.util.Arrays.toString(famille));