Ftl常用标签

参考:http://blog.csdn.net/niuch1029291561/article/details/8190617

------- 名词解释

?? 判断对象是否存在

注意点:使用<#if></#if>标签判断的时候 标签里的 type 不能加 ${},取值的时候加上。

条件判断:<#if returnMap["TOTALINV"]??>${(returnMap["TOTALINV"])?string.number}<#else>0</#if> 条件判断以及类型转换: <td class="tdright">  <#if sumMap["PROJECT_TOLINVAT"]??>${sumMap["PROJECT_TOLINVAT"]?string('0.00')}<#else>0</#if> </td>

列表循环: <#if (tpcprojectmoneymaintainList.results)??>    <#list tpcprojectmoneymaintainList.results as pcProject>

   </#list> </#if>

--------使用小结:

前提:引入 freemarker-2.3.15.jar jar包。

============================--------判断+循环
eg:1
<#if (pageResults.results)??>
<#list pageResults.results as poolband>
<tr <#if poolband_index %2 ==1 >class="erow"</#if>>
<td></td>
</tr>

</#list>

</#if>
eg:2
<#if key??>
<#if key=="1">城区
<#elseif key=="2">乡镇
<#elseif key=="3">农村
</#if>
</#if>
------------------------------宏的定义+引用
3 引用:
在<!DOCTYPE html PUBLIC "".....>上方引入。
<#import "/app/pool/poolband/poolBandMacro.ftl" as poolBandMacro>
<#import "/commons/freemarker/pageMacro.ftl" as pageMacro>
2 使用:
<#if (pageResults.results)??>
<#list pageResults.result as poolhand>
<tr <#if poolhand_index % 2 ==1 >class="erow"</#if>>
<td><@poolBandMacro.bandAreaAddressHandle key="${poolband.bandAreaAddress!}"/></td>
<td><@poolBandMacro.bandBuildPropertyHandle key="${poolband.bandBuildProperty!}" /></td>
</tr>
</#list>
</#if>
1 定义:poolBandMacro.ftl
<#macro bandAreaAddressHandle key>
<#if key??>
<#if key=="1">城区
<#elseif key=="2">乡镇
<#elseif key=="3">农村
<#if>
</#if>
</#macro>

<#macro bandBuildPropertyHandle key>
<#if key??>
<#if key=="1">新建
<#elseif key=="2">扩容
<#elseif key=="3">改造
</#if>
</#if>

</#macro>

===============----------1226
注意点:使用<#if></#if>标签判断的时候 type 不能加 ${},取值的时候加上。

<#if type?? && type==3>
<span style="color:red">${type!}</span>
<div id="con" class="subTag" style="float:left;">
<ul id="tags">
<li id="two1" class="selectTag"><a href="${base}/intensiveconfig/findConfigList.do?type=3&pageName=subProjectIdPage">新小基站配置</a></li>
<li id="two2"><a href="${base}/intensiveconfig/findConfigList.do?type=3&pageName=projectCdPage">往年小基站配置</a></li>
</ul>
</div>
</#if>


<#if ${type!}?? && ${type!}==2>
<span style="color:red">${type!}</span>
<div id="con" class="subTag" style="float:left;">
<ul id="tags">
<li id="two1"><a href="${base}/intensiveconfig/findConfigList.do?type=1&pageName=subProjectIdPage">新室分配置</a></li>
<li id="two2" class="selectTag"><a href="${base}/intensiveconfig/findConfigList.do?type=1&pageName=projectCdPage">往年室分配置</a></li>
</ul>
</div>
</#if>


===============-----------
条件判断:<#if returnMap["TOTALINV"]??>${(returnMap["TOTALINV"])?string.number}<#else>0</#if>
条件判断以及类型转换:
<td class="tdright">
<#if sumMap["PROJECT_TOLINVAT"]??>${sumMap["PROJECT_TOLINVAT"]?string('0.00')}<#else>0</#if>
</td>

列表循环:
<#if (tpcprojectmoneymaintainList.results)??>
<#list tpcprojectmoneymaintainList.results as pcProject>

</#list>
</#if>

原文地址:https://www.cnblogs.com/21heshang/p/8342591.html