Как сделать так, чтобы значение в выпадающем списке не изменялось после отправки в JSP? - PullRequest
1 голос
/ 04 августа 2009

Допустим, у меня есть страница JSP, которая содержит раскрывающийся список. когда пользователь выбирает элемент и нажимает кнопку отправить, чтобы отправить страницу JSP самому себе, после этого страница JSP будет перезагружена и выбранный элемент будет отображен. Как я могу сделать так, чтобы это не изменилось даже после перезагрузки страницы JSP?

Ответы [ 3 ]

1 голос
/ 04 августа 2009

Вы должны выбрать его заново.

Итак, все закончится так:

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

 <%
       }
 %>

Таким образом, каждый раз, когда вы перезагружаете страницу jsp, вы проверяете, является ли текущий элемент, который вы рисуете, таким же, каким он был ранее выбран пользователем. Если это так, вы добавляете «выбранный» к опции (в первый раз он не будет ничего совпадать)

Я немного заржавел в JSP, так что, вероятно, есть более "изящный" способ сделать это, но этот "старый стиль" действительно работает.

Надеюсь, это поможет.

0 голосов
/ 04 августа 2009

Я думаю, что этот метод лучше:

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

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

Я думаю, что этот метод будет работать.

0 голосов
/ 04 августа 2009

Установите атрибут selected для option, который был передан в форму ... ваш вывод должен выглядеть следующим образом (при условии, что пользователь выбрал "Saab"):

<select>
  <option>Volvo</option>
  <option selected="selected">Saab</option>
  <option>Mercedes</option>
  <option>Audi</option>
</select>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...