2009-08-04 3 views
1

내가 드롭 다운 목록을 포함하는 jsp 페이지를 가지고 있다고 가정 해 봅니다. 사용자가 항목을 선택하고 submit을 클릭하여 JSP 페이지를 자신에게 제출하면 그 다음에 JSP 페이지가 다시로드되고 전에 선택된 항목은 선택 해제됩니다. JSP 페이지를 다시로드 한 후에도 변경되지 않게하려면 어떻게해야합니까?JSP로 제출 한 후 dropdownlist의 값을 변경하지 않으려면 어떻게해야하나요?

답변

0

양식에 전달 된 optionselected 속성이 ... 당신의 출력 (사용자가 선택한 "사브"가정)과 같아야합니다 설정 :

<select> 
    <option>Volvo</option> 
    <option selected="selected">Saab</option> 
    <option>Mercedes</option> 
    <option>Audi</option> 
</select> 
+0

이것이 작동하지 않는다고 생각합니다. 사용자가 선택한 옵션을 어떻게 알 수 있습니까? 나는 이것이 올바른 방법이 아니다라고 생각 ... 볼보 <%if(saab)%> ... 을 <%if(volov)%> <= "선택"선택 옵션> :이 방법을 사용하는 경우, 내가 코드 같은 종류를 작성해야 생각합니다. 샘플 코드를 줄 수 있습니까? – MemoryLeak

+0

다른 모든 사람들과 같은 대답입니다 ... 적은 코드로. 페이지에서 JSP로 다시 POST 할 때'select' 엘리먼트는 폼 내에 있어야하고 id를 가지고 있어야합니다 (예제에서는 없습니다). id와 선택된'option' 엘리먼트의 값은 폼에 전달 될 것입니다. 각 옵션의 값이 POST에 전달 된 값과 동일한 지 테스트하기 위해 양식을 출력하기 위해 요소를 반복합니다. – beggs

1

을 당신은-선택을 다시해야 그것.

그래서 이런 식으로 끝날 것입니다 : 당신이 그림있는 현재 항목이 이전에 사용자가 선택한 같은 경우

<select name="dropdown"> 
<% 
     String selectedItem = request.getParameter("dropdown"); 
     for(String item : values) { 
%> 
     <option <%=item.equals(selectedItem)?selected:""%>><%=item%> 

<% 
     } 
%> 

그런 식으로 당신이 JSP 페이지를 다시로드 할 때마다, 당신은 확인합니다. 그렇다면 옵션에 "selected"를 추가하십시오 (처음에는 아무 것도 맞지 않습니다)

저는 JSP로 녹슨 느낌이 들기 때문에 좀 더 "우아한"방법이 있습니다. 하지만이 "옛 스타일"은 확실히 작동합니다.

도움이되기를 바랍니다.

-3

나는이 방법이 더 좋은 생각 :

<script type = "text/javascript"/> 
<%String selectedItem ; 
if(request.getAttribute("dropdown") != null){ 
    selected= request.getAttribute("dropdown");%> 

document.getElementById("selectbox").selectedIndex = selectedItem; 
<%}%> 
</script> 

나는이 방법이 작동합니다 생각합니다.

+0

그것이 내가 말한 것입니다 ... 나는 그것을하는 법을 말하지 않았습니다 ... 이것이 효과가 있습니다. – beggs