velocity问题 ,万分感谢!!!!!!

成王败寇 发布于 2013/09/09 23:25
阅读 268
收藏 3
         #foreach ($map in $categoryList)
        #if("$!defaultCategory"=="$!map.CATEGORY") 
        $!map.BANK_ACCT  
     #if($!map.BANK_ACCT !="" && !$null.isNull($map.BANK_ACCT)&& $!map.BANK_ACCT !=" " &&          $str.getStrLength("$!map.BANK_ACCT") > 6 )
#set ($tempAcct= $str.getSubString($!map.BANK_ACCT,0,6))
#if( ($tempAcct!="431502")&&($tempAcct!="431503")&& ($tempAcct!="622630")&&($tempAcct!="622631")
&& ($tempAcct!="622632")&&($tempAcct!="622633") && ($tempAcct!="999999")&& ($tempAcct!="623020") && ($tempAcct!="623021") && ($tempAcct!="623022")&& ($tempAcct!="623023") && ($tempAcct!="625969") )
(他行)
#else
(本行)
  #end
#end

       #end

        #end

以前是写死的  现在想写成动态的,但是改成如下不会了

#foreach($cardbin in $product-newcardbin)

 #foreach ($map in $categoryList)

        #if("$!defaultCategory"=="$!map.CATEGORY") 
        $!map.BANK_ACCT  
     #if($!map.BANK_ACCT !="" && !$null.isNull($map.BANK_ACCT)&& $!map.BANK_ACCT !=" " &&          $str.getStrLength("$!map.BANK_ACCT") > 6 ) 
#set ($tempAcct= $str.getSubString($!map.BANK_ACCT,0,6))
#if( ($tempAcct==cardbin.MEMO1))
(他行)
#else
(本行)
  #end
#end

       #end

        #end

#end
这样改了  如果cardbin 有几个元素就会输出几个   ,不知怎么写,希望帮助一下,谢谢!

加载中
0
红薯
红薯

本来我对 velocity 挺精通的,可是看到这个问题就懵了,不知道具体是什么意思,再加上那么些代码,头疼。。。

楼主可以定义一个
#set($tempAccts = [431502,622630,11,122,3,33,333,2223,453])
然后
#if($tempAccts.contains($tempAcct))
#end

成王败寇
成王败寇
多谢了 已解决,有时间我会贴已完成的代码
0
wiseach
wiseach

最好把逻辑运算提取出来,放到view外部逻辑或具体的bean中,然后再传入view 显示。否则维护起来真的很痛苦。

0
supperman
supperman
velocity不是这么用的,参数要在后台计算好,velocity少做判断
0
苏文
苏文
把逻辑都放前台了啊。。。
返回顶部
顶部