Изменение параметра, представленного для выпадающего меню - PullRequest
0 голосов
/ 25 октября 2011

У меня есть раскрывающаяся форма, которая содержит 4 различных типа идентификаторов, которые затем запрашивают базу данных. Как изменить параметр, который передается на страницу действий? Он всегда отправляет одно и то же имя ввода, а не значение, выбранное в раскрывающемся списке.

1 Ответ

0 голосов
/ 25 октября 2011

Это не так, как работают формы HTML. Будет отправлена ​​пара name=value элемента ввода, а не его идентификатор. Вы также должны быть заинтересованы в значении параметра вместо имени параметра. Так что вместо гипотетического и ужасающего подхода, подобного этому

if (request.getParameter("foo1") != null) {
    results = service.find("foo1");
} else if (request.getParameter("foo2") != null) {
    results = service.find("foo2");
} else if (request.getParameter("foo3") != null) {
    results = service.find("foo3");
} else if (request.getParameter("foo4") != null) {
    results = service.find("foo4");
}

Вы должны просто сделать

results = service.find(request.getParameter("foo"));

в сочетании с

<select name="foo">
    <option value="foo1">foo 1</option>
    <option value="foo2">foo 2</option>
    <option value="foo3">foo 3</option>
    <option value="foo4">foo 4</option>
</select>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...