[英]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.