2016-08-22 55 views
1

我必須檢查條件,如果值大於1.0,將類設置爲紅色,如果不是,則類將是普通樣式。我嘗試了下面的代碼<s:if>標籤不工作struts2

<s:if test="%{plan.list[#p.index].val}>1.0"> 
    <span class="classRed"> 
     <s:property value="%{plan.list[#p.index].val}" escape="false" /> 
    </span> 
</s:if> 
<s:else> 
    <span> 
     <s:property value="%{plan.list[#p.index].val}" escape="false" /> 
    </span> 
</s:else> 

只有'else'部分正在工作。如果我將classRed部分移到「其他」部分,那麼這將起作用。但是,這不是真正的解決方案。 我是否犯任何語法錯誤?

回答

2

結束括號是錯誤 取而代之的是

<s:if test="%{plan.list[#p.index].val}>1.0"> 

以下語法工作

<s:if test="%{plan.list[#p.index].val>1.0}"> 
+1

OGNL是一種表達式語言:*整個*表達括號的,不只是它的一部分。 –

+0

@DaveNewton謝謝戴夫。是的,我明白你的觀點。 – sahana