我有一個複選框,如果某些BigDecimal
值大於零,應該檢查該複選框。我嘗試這樣做:Apache Velocity中的BigDecimal比較
<input title="$i18n.tr('foo')" type="checkbox" name="foo.bar" id="foobar"
#if($foo.bar && $foo.bar.doubleValue() > 0)checked#end/>
(foo
是一個POJO和bar
是BigDecimal
場)
但無論在什麼bar
商店,複選框是選中始終。我試圖以調試它添加onclick
事件:
onclick="alert('$foo.bar.doubleValue()');"
在這裏,我可以看到酒吧的價值是確定的,例如15.0
,所以這不是一個價值的問題。
如何將BigDecimal
與Velocity模板中的另一個數字進行比較?
這** **應該工作。你有沒有檢查問題不在別的地方?例如,HTML源中是否存在屬性,但瀏覽器錯誤地緩存了該狀態?處理HTML的方式是否放棄屬性,因爲它不是有效的XML?以其他方式調試:打印'$ foo.bar.class',在輸入元素之外以類似的'#if'打印其他內容,另外做兩個'#if',只有一部分條件等。你使用的是哪個版本的Velocity? –
@SergiuDumitriu'$ foo.bar.class'是'類java.math.BigDecimal'。另外,渲染後HTML中沒有'checked'。條件的一部分不起作用。速度版本:1.4 –
並且升級到更高版本的Velocity是不可能的,對吧? –