freemarker 循环list的一点用法

阿超 发表于 2009-08-17 12:33 | 来源: | 阅读 1,391 次

在freemarker中list是经常用到的

比如在页面中需要有个单纯的遍历(以年度为例),无需调用任何数据,很方便

当数据超过3位的时候,freemarker会自动用逗号截取 格式如:2,008

如何解决呢?

加.toString(),如:${(userId).toString()}加?c,如:${(userId)?c} freemarker配置文件freemarker.properties加上number_format=#

判断是否为空:

<#if xxList[0]?exists>

不然当xxList没有数据的时候 ,很大很大一个黄页就等着你了

截取字符串长度:

有的时候我们在页面中不需要显示那么长的字符串,比如新闻标题,这样用下面的列子就可以自定义显示的长度

< lt. <= lte. > gt. >= gte

<#if jstbqkVO.gzdd?length lt 8>
           <a>${jstbqkVO.gzdd?default("")}</a>
      <#else>
           <a title="${jstbqkVO.gzdd}">${jstbqkVO.gzdd[0..3]?default("")}...</a>
</#IF>

意思就是如果这个字符串的长度小于8,那么就正常显示,反之则取4位

嵌套list:

很多时候,数据库里存储的都是编号,而页面上需要显示的汉字,而且不在一张表里,看列子

<#list kcList as kcVO>
           <#if kcVO.kch=jsskVO.kch> (kcVO里有编号和名称,而jsskVO里只有编号)
                  ${kcVO.kcm}
           </#IF>
</#LIST>
喜欢Java豆技术站点的文章,那就通过 RSS Feed 功能订阅阅读吧!

我要评论

*

* 绝不会泄露



返回首页 | 关于我们 | 联系我们 | 广告合作 | 网站地图 | 友情链接 | 版权声明 | 模板设计