Freemarker判斷是否為空白_web及架構

來源:互聯網
上載者:User

http://www.cnblogs.com/xinxin1994/p/6138063.html


1、判斷對象是否為空白

freemarker中顯示某對象使用${name}.

 

但如果name為null,freemarker就會報錯。如果需要判斷對象是否為空白:

<#if name??>

……

</#if>

 

當然也可以通過設定預設值${name!''}來避免對象為空白的錯誤。如果name為空白,就以預設值(“!”後的字元)顯示。

 

對象user,name為user的屬性的情況,user,name都有可能為空白,那麼可以寫成${(user.name)!''},表示user或者name為null,都顯示為空白。判斷為空白

<#if (user.name)??>

……

</#if>

2、判斷List是否為空白

<#if orgList?? && (orgList?size > 0) > <#else> <li class="T-creat">您還沒有企業,請建立新企業<a href="javascript:void(0)" id="add-org-a" >立即建立</a></li> </#if>

3、判斷Map是否為空白

用freemarker取出map值後,判斷該值是否等於某一字串,可以使用內建函數?string來進行判斷。

實際代碼:Data 是一個Record對象【JFinal的,其實可以理解為一個Map】。Data.get(key)根據map的key取出value對應的值。

 <ConditionData>
  <#list datas as Data>
   <Condition>
    <#list Data.getColumnNames() as key> 
     <${key}>
      <#if Data.get(key)?exists><#if Data.get(key)?string !="null">${Data.get(key)}</#if></#if>
     </${key}> 
    </#list>
   </Condition>
  </#list>
 </ConditionData>

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.