JSP, если переменная начинается с
Мне нужно посмотреть, если переменная начинается с ключей "ef", таких как ef1, efabc, efanythink... и, если да, показать сообщение об ошибке, я прошёл здесь смесь php и jsp, конечно, неверно и с ошибками, я не понимаю jsp:
<c:if test="${empty channel.getChannelName()}">
<%
if (string_starts_with(${channelName}, 'ef')) { header("location:http://google.com"); }
или покажи эту ошибку
<div class="error"> This Channel url Portected!</div>
Исходный файл: http://pastebin.com/ach8PXY9
3 ответа
<c:if test='${fn:startsWith(channel.channelName, "ef")}'>
...
</c:if>
<c:if test='${not fn:startsWith(channel.channelName, "ef")}'>
...
</c:if>
ИЛИ вы можете использовать
'<c:choose> <c:when>'
Есть метод JSTL для этого!
<c:choose>
<c:when test="${fn:startsWith(channel.getChannelName(), "ef")}">
<script type="text/javascript">window.location.replace("http://google.com/");</script></c:when>
<c:otherwise>
<div class="error"> This Channel url Portected!</div>
</c:otherwise>
</c:choose>
http://docs.oracle.com/javaee/5/jstl/1.1/docs/tlddocs/fn/tld-summary.html
Также возможно:
if (channelName != null && channelName.indexOf("ef") == 0) {
%><div class="error"> This Channel url Portected!</div><%
}