随笔-112  评论-73  文章-0  trackbacks-0

Freemarker 可以通过macro 来定义一个组件(或者叫指令)。然后在需要的地方引用。

比如,想在每增加页面的地方设置一下当前页的title,类似于这样:

这样就可以定义一个名为title的组件,然后通过参数传入标题。

Formtitle.ftl代码:

<#--表单标题 -->

<#macro formTitle title="">

<script type="text/javascript" src="platform/js/jquery.corner.js"></script>

<div id="toolbar" class="page_title">

<div id="page_title"style="float:left; margin-top:3px; margin-left:5px;">

<img src="platform/images/ico.png" />${title}</div>

<div align="right" id="btns" style="padding-right:10px">

<#nested/>

</div>

</div>

<div class="clear"/>

<script language="javascript">

$('#page_title').corner("5px");

</script>

</#macro>

其中 <#macro formTitle title=""> 表示定义该组件名为 formTitle ,有一个参数title默认值为"",其他的内容就按照美工的设计写就要可以了。

<#nested/> 表示可以嵌入代码,即可以在使用时嵌入其他的内容。

使用时:

<@formTitle title="用户增加">

</@formTitle>

 

<@formTitle title="用户增加">

    这里是嵌入的内容,可以是HTML,也可以是freemarker 的内容。

</@formTitle>

看一下实际的效果图

 

 

posted on 2012-07-06 10:19 Libo 阅读(818) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问