2010-03-09 6 views
20

다중 속성이 복수으로 설정되어 있기 때문에 여러 값을 선택할 수있는 선택 목록 상자가있는 HTML 양식이 있습니다. 폼 메서드는 get 메서드입니다. 양식의 HTML 코드는 다음과 같습니다.JSP의 선택 상자에서 여러 개의 선택된 값을 얻는 방법은 무엇입니까?

<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 페이지에서 선택된 값에 액세스하는 방법.

+0

@skaffman를 실행 - 요청 매개 변수의 검색은 서블릿 API – Bozho

답변

40

request.getParameterValues("select2")은 제출 된 모든 값의 배열을 반환합니다. (JSTL을 사용)의 라인을 따라

+1

을 통해 이루어집니다 때문에 나는, servlets''태그 선생님, 링크가 유효하지 않습니다. –

+3

고정 .......... – Bozho

7

뭔가 :

<p>Selected Values: 
<ul> 
    <c:forEach items="${paramValues['select2']}" var="selectedValue"> 
    <li><c:out value="${selectedValue}" /></li> 
    </c:forEach> 
</ul> 
</p> 
1

그것은 과잉하지만 봄 양식을 보인다는 우아하게이 문제를 처리합니다. 물론 Spring MVC를 이미 사용하고 있고 Spring Forms 기능을 이용하려는 경우에도 그렇다.

// 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(); 

    } 
3

단순한 대답을 찾지 못했지만 JSP 페이지가 될 것입니다. 이 콘텐츠를 JSP 파일에 저장하면 선택한 값이 표시됩니다.

업데이트 : TEST.JSP로 파일을 저장하고 웹/응용 프로그램 서버에

<!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> 
관련 문제