У меня есть два тега jstl if, и они оба получают выполненное событие, если один из случаев возвращает true.
Пожалуйста, обратитесь к приведенному ниже коду, где HasBooked имеет значение true:
<form class="form-group" action="book_hotel.jsp" method="POST">
<select class="form-control dest" name="destination" onchange="getSelDest(this)">
<%
boolean hasBooked = (Boolean) session.getAttribute("hasBooked");
%>
<c:if test = "${!hasBooked}"> //returns true still it is not skipped
<option value="null">Choose a destination</option>
</c:if>
<c:if test = "${hasBooked}">
<option selected value="${destination}">${destination}</option>
</c:if>
<option value="Chile">Chile</option>
<option value="Cuba">Cuba</option>
<option value="Dubai">Dubai</option>
<option value="Egypt">Egypt</option>
</select>
<div class="text-center" style="margin:3% 0;">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
Я проверил, напечатав значение hasBooked, и это правда, но первый случай <c:if test = "${!hasBooked}">
выполняется.ЕСЛИ JSTL не оценивает условия, которые я предполагаю.
Любое руководство будет по-настоящему оценено!
Заранее спасибо!