내가 드롭 다운 목록을 포함하는 jsp 페이지를 가지고 있다고 가정 해 봅니다. 사용자가 항목을 선택하고 submit을 클릭하여 JSP 페이지를 자신에게 제출하면 그 다음에 JSP 페이지가 다시로드되고 전에 선택된 항목은 선택 해제됩니다. JSP 페이지를 다시로드 한 후에도 변경되지 않게하려면 어떻게해야합니까?JSP로 제출 한 후 dropdownlist의 값을 변경하지 않으려면 어떻게해야하나요?
1
A
답변
0
양식에 전달 된 option
의 selected
속성이 ... 당신의 출력 (사용자가 선택한 "사브"가정)과 같아야합니다 설정 :
<select>
<option>Volvo</option>
<option selected="selected">Saab</option>
<option>Mercedes</option>
<option>Audi</option>
</select>
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
이것이 작동하지 않는다고 생각합니다. 사용자가 선택한 옵션을 어떻게 알 수 있습니까? 나는 이것이 올바른 방법이 아니다라고 생각 ... 볼보 <%if(saab)%> ... 을 <%if(volov)%> <= "선택"선택 옵션> :이 방법을 사용하는 경우, 내가 코드 같은 종류를 작성해야 생각합니다. 샘플 코드를 줄 수 있습니까? – MemoryLeak
다른 모든 사람들과 같은 대답입니다 ... 적은 코드로. 페이지에서 JSP로 다시 POST 할 때'select' 엘리먼트는 폼 내에 있어야하고 id를 가지고 있어야합니다 (예제에서는 없습니다). id와 선택된'option' 엘리먼트의 값은 폼에 전달 될 것입니다. 각 옵션의 값이 POST에 전달 된 값과 동일한 지 테스트하기 위해 양식을 출력하기 위해 요소를 반복합니다. – beggs