Добавленные стоимости к arraylist используют JSTL

Когда страница сначала загружается, имейте Поиск, появляются в текстовом поле, окрашенном в серый, если Вы хотите, чтобы он был.

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

<input type="text" value="Search" onfocus="this.select();" />
5
задан Michel 2 December 2009 в 18:59
поделиться

2 ответа

JSTL не предназначен для такого рода вещей. Это действительно относится к бизнес-логике, которая (не) напрямую контролируется классом сервлета.

Создайте сервлет, который делает следующее:

protected void doGet(HttpServletRequest request, HttpServletResponse response) {
    List<String> animals = new ArrayList<String>();
    animals.add("Sylvester");
    animals.add("Goofy");
    animals.add("Mickey");
    request.setAttribute("animals", animals);
    request.getRequestDispatcher("/WEB-INF/animals.jsp").forward(request, response);
}

Сопоставьте это с шаблоном URL из / animals .

Теперь создайте файл JSP в / WEB -INF / animals.jsp (поместите его в WEB-INF , чтобы предотвратить прямой доступ):

<c:forEach items="${animals}" var="animal">
    ${animal}<br>
</c:forEach>

Нет необходимости в jsp: useBean , поскольку сервлет уже установил его.

Теперь вызовите сервлет + JSP с помощью http://example.com/context/animals .

11
ответ дан 18 December 2019 в 14:47
поделиться

Приведенный выше код не работает.

Ниже приведены строки кода, которые необходимо поместить в файл animals.jsp

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<c:forEach var="animal" items="${animals}">
   <c:set var="animalName" value="${animal}"/>
   <c:out value="${animalName}"/>
</c:forEach>
1
ответ дан 18 December 2019 в 14:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: