Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to write if else condition using ternary operator in jstl?

Tags:

java

jsp

jstl

el

I want to write a if else condition using ternary in JSTL. I did it using jsp.

My code is using jsp:

<%= relAttributeValue != "false" && !relAttributeValue.equals("false") ? "rel=\"nofollow\"" : "" %>

How can I achieve it using jstl?

like image 653
user2142786 Avatar asked Feb 15 '23 22:02

user2142786


1 Answers

You mean Expression Language, EL in short, since that's the component that allows you use ${something} expressions, while JSTL is a tag library which gives you tag components like <c:set>.

In EL, you can do it like this:

<c:set var="ternaryResult"
    value="${(relAttributeValue != 'false') ? 'rel=\"nofollow\"' : ''}" />

Note that in EL you don't need to worry about comparing references using == like in Java. More info on this: Is there an equivalent of '==' from Java in EE 6 JSF EL

like image 64
Luiggi Mendoza Avatar answered Mar 04 '23 21:03

Luiggi Mendoza