velocity 宏,javascript函数及相互调用

6 篇文章 0 订阅

一,Velocity 中的宏我们可以理解为函数。
①宏的定义
#macro(宏的名称$参数1 $参数2 …)
语句体(即函数体)
#end
②宏的调用
#宏的名称($参数1 $参数2 …)
说明:参数之间用空格隔开。

如:

#set($pageNum = 15)

#macro(velocityMacro $para1 $para2 )

     $pageNum= $para1+$para2

#end

二,javascript函数:

例如

<script type="text/javascript">
function getToPage(param)
{
    alert(param)
}
</script>

写在<head></head>之间。

调用,如<a href="getToPage(2)">test</a>

 

三,混合调用:

    <a href="javascript:getToPage($!{category.id})">test</a>

注意:velocity的宏与javascript的函数是有区别的:

<a href="$pageNum" οnmοuseοver="#velocityMacro($pageNum -1)">hello</a>

<a href="$pageNum" οnmοuseοver="#velocityMacro($pageNum 1)">world</a>

运行发现,不论如何提示

hello上提示15, world 提示14

<a #velocityMacro($pageNum -1) href="$pageNum" >hello1</a>

则此时hello1显示14

 

以上现象说明#velocityMacro的执行顺序与它放的位置有关,且只要写了就会执行,即使没有触发事件(onmouseover等)。

 

 

一个小例子如下:

#if($!pager.currentPage<$!pager.totalPages)
   <a href="javascript:page($!{pager.currentPage}+1);">下页</a>
      <a href="javascript:page(${pager.totalPages});">尾页</a>
  #else
   下页
   尾页
  #end

 

vm成品效果请看 www.soyinke.com


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值