У меня есть страница jsp, которая загружает контент из базы данных в соответствии с тем, что пользователь должен видеть (загрузка информации о книге). Но мне также нужно, чтобы пользователь вводил, чтобы ввести количество на той же странице jsp.Как отправить входное значение в качестве параметра запроса ссылки на сервлет?
Я использовал теги JSTL для извлечения информации из базы данных и отображения ее с помощью следующего кода.
<c:forEach var="book" items="${listBooks.rows}">
<tr>
<td><c:out value="${book.bookID}"/></td>
<td><c:out value="${book.bookName}" /></td>
<td><c:out value="${book.bookType}" /></td>
<td><c:out value="${book.Price}" /></td>
Эта информация установлена в c: param, поэтому я могу использовать ее в сервлете.
У меня есть текст HTML, чтобы пользователь мог ввести количество. Мой вопрос заключается в том, как я могу отправить это как параметр сервлета, поскольку объект запроса не получает параметр количества (я предполагаю, что это не потому, что оно не находится внутри формы, которая направляется на определенный сервлет (AddBookServlet).
Мой код
<form>
<td>Quantity: <input type="text" name="quantity" value="" style="height:30px; width: 45px"/>
</td>
</form>
<td><a style="color: blue;" class="myButton1"
href=<c:url value="/AddBookServlet">
<c:param name="id" value="${book.bookID}"/>
<c:param name="name" value="${book.bookName}"/>
<c:param name="type" value="${book.type}"/>
<c:param name="amount" value="${book.price}"/>
<c:param name="seat" value="${param.quantity}" /><%-- not sure if this is the way to do it--%>
</c:url> > Add book</a>
Почему имя книги будет полем ввода? Просто распечатайте его и передайте его ID в скрытом поле. – Peter
@Peter Я согласен с тобой, но у меня создалось впечатление, что он пытался передать каждое поле сервлету в качестве параметров, возможно, не получить их снова из db –
Думаю, ему придется, если он захочет продолжить работайте с книжным объектом, но сейчас я понимаю. Бонусная оценка для атрибута readonly - отключенное поле не получает. :) – Peter