此if语句出错:
<if test="equal" value1="{$m.parent_id}" value2="{$var.tasks-menu-id}">
<math:increment field="var.tasks-children"/>
</if>
我已经仔细检查了数据集字段引用是否返回了正确的值,即使其中一个或两个值为null,测试也应该有效。
答案 0 :(得分:0)
“If条件没有产生布尔值”错误实际上有些误导,因为我在if
元素中设置测试的方式没有任何问题。 Here is the problem:
如果在该条件下不需要任何操作,则可以省略
<then>
或<else>
子元素。
if
命令要求then
或else
中的一个或两个作为其子项。在这种情况下,用作if
正文的命令被视为条件,错误是由于它没有(布尔值)返回值。
这有效:
<if test="equal" value1="{$m.parent_id}" value2="{$var.tasks-menu-id}">
<then>
<math:increment field="var.tasks-children"/>
</then>
</if>