freemark使用总结

1.下拉框中使用三元表达式:

<option value="1类" ${(bean.col5!?string="1类")?string('selected','')}>1类</option>

2.ftl页面中保留小数

<td><input type="text" class="form-control"  value="${(rows[2].col7?string("0.00"))!}" readonly/></td>

3.宏的使用(下拉框案例)

 1 <#macro select id data value="" defaultText="" valueField="value" textField="text">
 2     <select class="form-control input-sm select2" name="${id}" id="${id}">
 3         <option value="">${defaultText}</option>
 4         <#if data?is_hash_ex>
 5             <#list data?keys as key>
 6                 <#if key==value>
 7                     <option value="${key}" selected>${data[key]}</option>
 8                 <#else>
 9                     <option value="${key}">${data[key]}</option>
10                 </#if>
11             </#list>
12         <#else>
13             <#list data as dataItem>
14                 <#if valueField!="">
15                     <#if value==dataItem[valueField]?string>
16                         <option value="${dataItem[valueField]}" selected>${dataItem[textField]}</option>
17                     <#else>
18                         <option value="${dataItem[valueField]}" >${dataItem[textField]}</option>
19                     </#if>
20                 <#else>
21                     <#if dataItem==value>
22                         <option value="${dataItem}" selected>${dataItem}</option>
23                     <#else>
24                         <option value="${dataItem}">${dataItem}</option>
25                     </#if>
26                 </#if> 
27             </#list>
28         </#if>
29     <select>
30 </#macro>

调用:

<#import "/macro/control.ftl" as my/>
<@my.select4vld id="bgyy" data=TC_bgyy value="${bean.bgyy!}" /></#if>

 4.list遍历

<#list list as user>
    第${user_index+1}个用户
    用户名:${user.name}
    年  龄: ${user.age}
</#list>
遍历的时候排序:
<#list list?sort as l></#list>
<#list userList?sort_by(“age”) as user></#list>
<#list list? reverse as l></#list>。reverse使用同sort相同。reverse还可以同sort_by一起使用

 5.判断集合包含关系(主要用于checkBox多选框中)

1 <input name="role" type="checkbox"  ${roleIds!?seq_contains(role.roleId)?string("checked", "")} value="${role.roleId}">${role.roleName}&nbsp;&nbsp;&nbsp;
2 ${roleIds!?seq_contains(role.roleId)?string("checked", "")}
原文地址:https://www.cnblogs.com/dz-boss/p/10094250.html