If-then-else внутри выражения JSP?
Можете ли вы сделать инструкцию if-then-else внутри выражения JSP?
EDIT: В частности, я искал решение JSP, а не решение JSTL. Но некоторые решения JSTL ниже высоко оценены и очень приветствуются. Просто, пожалуйста, не проголосуйте меня за дублированный вопрос, потому что нас уже спрашивали о JSTL.
Ответы
Ответ 1
В JSP EL 2.0 вы можете сделать это с помощью тернарного оператора. Например:
<option value="1" ${param.number == 1 ? 'selected' : ''}>First option</option>
Что он делает, так это проверяет переменную JSP param
number
. Если это 1, то выбранный будет заменен. иначе ничего.
Ответ 2
Если вы используете JSTL, вы можете выбрать-когда-иначе.
<c:choose>
<c:when test="condition"></c:when>
<c:when test="condition2"></c:when>
<c:otherwise></c:otherwise>
</c:choose>
Для получения дополнительной информации о JSTL попробуйте здесь.
Ответ 3
Вы можете обернуть ваш html-код тегами jsp следующим образом:
<% if (condition) { %>
<div>Condition is true!</div>
<% } else { %>
<div>Condition is false</div>
<% } %>
Ответ 4
есть другой способ, который я использую, потому что Eclipse продолжает говорить мне, что он не может разрешить переменную, которая поступает из сервлета при выполнении, которая ниже (PS: Am new для JSP):
${if(var != null)"text to print"}
${if(var != null)var} to print a variable
${if(var != null)"text to print"}
результат будет похож на
текст для печати < var value here > текст для печати