如何在jstl中使用三元运算符编写if else条件

use*_*786 5 java jsp jstl el

嗨伙计们,我想在JSTL中使用三元编写if else条件.我是用jsp做的.我的代码使用的是jsp:

<%= relAttributeValue != "false" && !relAttributeValue.equals("false") ? "rel=\"nofollow\"" : "" %>
Run Code Online (Sandbox Code Playgroud)

我怎样才能使用jstl实现它

Lui*_*oza 8

你的意思是表达式语言,EL,简而言之,因为那是允许你使用${something}表达式的组件,而JSTL是一个标签库,为你提供标签组件<c:set>.

在EL中,你可以这样做:

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

请注意,在EL中,您不必担心使用==Java中的类似比较引用.关于这个的更多信息:在EE 6 JSF EL中是否有来自Java的'=='