Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从JSP中的选择框中获取多个选定值?_Java_Jsp_Servlets - Fatal编程技术网

Java 如何从JSP中的选择框中获取多个选定值?

Java 如何从JSP中的选择框中获取多个选定值?,java,jsp,servlets,Java,Jsp,Servlets,我有一个html表单,它有一个选择列表框,您可以从中选择多个值,因为它的multiple属性设置为multiple。考虑形式方法是获取方法。表单的html代码如下所示 <html> <head> <title>Untitled Document</title> </head> <body> <form id="form1" name="form1" method="get" action="display.jsp"&g

我有一个html表单,它有一个选择列表框,您可以从中选择多个值,因为它的multiple属性设置为multiple。考虑形式方法是获取方法。表单的html代码如下所示

<html>
<head>
<title>Untitled Document</title>
</head>
<body>
<form id="form1" name="form1" method="get" action="display.jsp">
  <table width="300" border="1">
    <tr>
      <td><label>Multiple Selection </label>&nbsp;</td>
      <td><select name="select2" size="3" multiple="multiple" tabindex="1">
        <option value="11">eleven</option>
        <option value="12">twelve</option>
        <option value="13">thirette</option>
        <option value="14">fourteen</option>
        <option value="15">fifteen</option>
        <option value="16">sixteen</option>
        <option value="17">seventeen</option>
        <option value="18">eighteen</option>
        <option value="19">nineteen</option>
        <option value="20">twenty</option>
      </select>
      </td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><input type="submit" name="Submit" value="Submit" tabindex="2" /></td>
    </tr>
  </table>
</form>
</body>
</html>

无标题文件
多选
十一
十二
蒂雷特
十四
十五
十六
十七
十八
十九
二十

我想在display.jsp页面的选择列表框中显示所选的值。因此,如何在display.jsp页面上访问所选值。

返回所有提交值的数组。

以下内容(使用JSTL):

所选值:


这似乎有些过分,但Spring Forms处理起来很优雅。当然,如果您已经在使用SpringMVC,并且希望利用SpringForms特性,那么就需要这样做

// jsp form
    <form:select path="friendlyNumber" items="${friendlyNumberItems}" />

    // the command class
    public class NumberCmd {
      private String[] friendlyNumber;
    }

    // in your Spring MVC controller submit method
    @RequestMapping(method=RequestMethod.POST)
    public String manageOrders(@ModelAttribute("nbrCmd") NumberCmd nbrCmd){

       String[] selectedNumbers = nbrCmd.getFriendlyNumber();

    }
//jsp表单
//命令类
公共类编号{
私有字符串[]friendlyNumber;
}
//在Spring MVC控制器提交方法中
@RequestMapping(method=RequestMethod.POST)
公共字符串manageOrders(@modeldattribute(“nbrCmd”)NumberCmd nbrCmd){
字符串[]selectedNumbers=nbrCmd.getFriendlyNumber();
}

由于我找不到简单的答案,只需添加更多内容,这将是JSP页面。运行后将此内容保存到jsp文件中,您可以看到所选内容的值

更新:将文件另存为test.jsp并在任何web/app服务器上运行

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<%@ page import="java.lang.*" %>
<%@ page import="java.io.*" %>
<% String[] a = request.getParameterValues("multiple");
if(a!=null)
{
for(int i=0;i<a.length;i++){
//out.println(Integer.parseInt(a[i])); //If integer
out.println(a[i]);
}}
%>
<html>
<body>
<form action="test.jsp" method="get">
<select name="multiple" multiple="multiple"><option value="1">1</option><option value="2">2</option><option value="3">3</option></select>
<input type="submit">
</form>
</body>
</html>


@skaffman-I标记了
servlet
,因为请求参数的检索是通过servlet APISir完成的,链接无效。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<%@ page import="java.lang.*" %>
<%@ page import="java.io.*" %>
<% String[] a = request.getParameterValues("multiple");
if(a!=null)
{
for(int i=0;i<a.length;i++){
//out.println(Integer.parseInt(a[i])); //If integer
out.println(a[i]);
}}
%>
<html>
<body>
<form action="test.jsp" method="get">
<select name="multiple" multiple="multiple"><option value="1">1</option><option value="2">2</option><option value="3">3</option></select>
<input type="submit">
</form>
</body>
</html>