2009-08-04 4 views
1

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

ответ

0

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

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

Я думаю, что это не работает, как мы можем узнать, какой вариант выбран пользователем? если использовать этот метод, я думаю, что я должен написать такого рода код: <%if(volov)%> <параметр, выбранный = «выбрано»> Volvo <%if(saab)%> ... ... Я думаю, что это не правильный метод. не могли бы вы дать мне образец кода? – MemoryLeak

+0

Это тот же ответ, что и все остальные ... Только с меньшим количеством кода. Элемент 'select' должен быть в форме и иметь идентификатор (он не указан в примере), когда страница POST возвращает JSP идентификатор, а значение выбранного элемента' 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