(五)Thymeleaf标准表达式之——[7->8]条件表达式& 默认表达式


2.7 条件表达式

模板名称:condition-express.html
<1>a ? b:c  (if then:else)
<2>a?c (if else)
条件表达式( condition then else )的所有三个部分都是表达式,这意味着它们可以是变量( ${...} *{...} ),消息( #{...} ),URL( @{...} )或文字( '...' ))。
e.g.
<li>? 'xx' :'xx'(if ? then:else)<span th:class="${title} ? 'green' :' red'">样例一</span></li>
<li>?'xx'(if ? then)<span th:class="${title1} ? 'green'">样例二</span></li>
<!--   嵌套   -->
<tr th:class="${row.even}? (${row.first}? 'first' : 'even') : 'odd'">
  ...
</tr>
<!--  Else表达式也可以省略,在这种情况下,如果条件为false,则返回null值 -->
<tr th:class="${row.even}? 'alt'">
  ...
</tr>

2.8 默认表达式(Elvis operator )

模板名称:condition-express.html
语法: ?: (if:defaultValue)
 the first one is used if it doesn’t evaluate to null, but if it does then the second one is used.(值不为null使用第一个,否则第二个)
e.g.
<div th:object="${session.user}">
  ...
  <p>Age: <span th:text="*{age}?: '(no age specified)'">27</span>.</p>
</div>
equals:
<p>Age: <span th:text="*{age != null}? *{age} : '(no age specified)'">27</span>.</p>

 

 

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM