簡體   English   中英

如何在Struts 2中將兩個布爾值與OGNL連接起來?

[英]How to concatenate two Boolean values with OGNL in Struts 2?

我有兩個變量設置如下:

<s:set var="A" value="true" />
<s:set var="B" value="false" />

我想使用如下自定義屬性info生成下面的HTML:

<td info="truefalse">&#160;</td>

我想在我的JSP文件中以下行,但我不能讓true旁邊false

<td info="<s:property value="#A?'true':'false'+#B?'true':'false'""/>&#160;</td>

輸出: <td info="true">&#160;</td>

<td info="<s:property value="#A" /><s:property value="#B" />">&#160;</td>

輸出: <td info="false">&#160;</td>

OGNL使用+來連接字符串。 有了布爾值來轉換為字符串,你應該做類似的事情

<s:property value="%{''+#A+#B}"/> 

使用<s:if>試試這個

<s:set var="A" value="true" />
<s:set var="B" value="false" />

<td info="<s:if test="%{#A==true}">true</s:if><s:else>false</s:else><s:if test="%{#B==true}">true</s:if><s:else>false</s:else>">&#160;</td>
 OR
<td info="<s:property value="#A" /><s:property value="#B" />">&#160;</td>

輸出:

<td info="truefalse">&#160;</td>

原因:您無法連接Boolean 您需要將Boolean轉換為string並且只能連接strings

試試這個可能對你有幫助..

<td info="<s:property value="A"></s:property><s:property value="B"></s:property>">&#160;</td>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM