Не знаю лучшего названия, но вот что я пытаюсь сделать.Как получить значение от представленной кнопки в JSP?
У меня есть следующая форма, в которой будет отображаться список книг, и после каждой записи книги есть кнопка удаления. Список может быть любой длины. Чтобы получить идентификатор книги, я установил name="remove[${cartItem.bookId}]"
, но как получить это значение в сервлет? request.getParameter("remove")
и request.getParameterValues("remove")
возврат null всякий раз.
<form method="post" action="removeBookFromCart">
<c:forEach var="cartItem" items="${sessionScope.cart.cartItems}">
<tr>
<td><c:out value="${cartItem.title}" /></td>
<td><input type="submit" name="remove[${cartItem.bookId}]" value="Remove"/></td>
</tr>
</c:forEach>
</form>
Синтаксис, который вы там работаете только для PHP. У PHP есть дополнительная функция, которая автоматически переводит имена параметров запроса, заканчивающиеся на '[]', в массив на '$ _REQUEST'. Эта функция не является частью HTTP и HTML, поэтому вы не должны ожидать увидеть то же самое во всех других веб-языках/API. PHP покрывает это отсутствием поддержки чего-то вроде 'getParameterValues ()', который соответствует спецификациям HTTP/HTML нескольких входных элементов с тем же именем. – BalusC