繁体   English   中英

速度模板语言:在一个#elseif()语句中连接两个条件

[英]Velocity Template Language: Connect two conditions in one #elseif() statement

在我的示例中,参数为:

$ p2.length

其值为“ 0

和布尔值

$ suspectYesNo设置为“ false ”。

我希望在我的代码中第二个#elseif由于我设置的参数而运行,但是它显示出“代码4运行”

我想,我的错误是使用“ && ”连接两个条件,但是我不知道如何正确定义带有两个条件的线。

这使我想到一个问题:如何在一个#elseif()中正确组合两个条件($ p2.length()== 0)和($ suspectYesNo.value.contains(“ true”))。

还是我定义了布尔错误?

  #if($p2.length()>0)

  Code 1 runs

  #elseif($p2.length()==0 && $suspectYesNo.value.contains("true"))

  Code 2 runs

  #elseif($p2.length()==0 && $suspectYesNo.value.contains("false"))

  Code 3 runs

  #else

  Code 4 runs

  #end

感谢user7294900为我提供了可以解决问题的参考。

它没有将布尔值读取为字符串,可以通过添加“ toString()”方法来解决。

使用此代码,它可以按需工作:

  #if($p2.length > 0)

  Code 1 runs

  #elseif($p2.length == 0 && $suspectYesNo.value.toString().contains("true"))

  Code 2 runs

  #elseif($p2.length == 0 && $suspectYesNo.value.toString().contains("false"))

  Code 3 runs

  #else

  Code 4 runs

  #end

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM