5
<% System.out.println("These indexed shall be shown on gui "+(ArrayList)request.getSession().getAttribute("selectedIndexes")); %>   // ArrayList value can be 2,3,5,9

  <s:iterator var="itr" value="#session.completeArrayList" status="stat">
 <s:if > //if stat.count value present in arraylist(selectedIndexes), then go to if loop
 </s:if

</s:iterator>

ループ内で%{#stat.count}値をチェックする方法がわかりません。これをどうしようかarraylist{selectedIndexes}<s:if>

4

4 に答える 4

5

index と count プロパティをまだ試しましたか。ここに例を示すリンクがあります。

  <s:iterator status="status" value='%{0, 1}'>
      Index: <s:property value="%{#status.index}" /> <br />
      Count: <s:property value="%{#status.count}" /> <br />  
   </s:iterator>

印刷します

インデックス: 0 カウント: 1 インデックス: 1 カウント: 2

于 2012-12-28T06:29:15.733 に答える
4

Struts2 はOGNLを使用し、in演算子があります。したがって、次のように簡単に確認できます。

<s:iterator var="itr" value="#session.completeArrayList" status="stat">
  <s:if test="#stat.count in #session.selectedIndexes">
  </s:if
</s:iterator>
于 2012-12-29T00:28:02.793 に答える
1

すべての要素のリストと、選択した要素を含むサブリストがすでにある場合は、マップを使用できます。

<s:iterator var="currentElement" value="#session.selectedIndexes" >
   <s:property value="#session.completeHashMap[#currentElement]" />
</s:iterator>

リストでは、あなたが何を達成したいのかはっきりしていません。<s:if/>サブリスト(およびインデックスではなく値を格納しているサブリスト)のすべての要素にforを入力する場合は、次のようになります。

completeArrayList:{"a"、 "b"、 "c"、 "d"、 "e"、 "f"}

selectedIndexes:{"c"、 "d"}

contains次に、次のように使用できます。

<s:iterator var="currentElement" value="#session.selectedIndexes" >
   <s:if test="%{#session.completeArrayList.contains(#currentElement)}">
      Selected Index with value 
      <s:property value="#currentElement" /> 
      found on bigList
   </s:if>
</s:iterator>

代わりに、selectedIndexesが要素のINDEXES(値ではなく)をArrayListに格納している場合、

completeArrayList:{"a"、 "b"、 "c"、 "d"、 "e"、 "f"}

selectedIndexes:{2,3}

あなたはgetこれらをこのようにすることができます:

<s:iterator var="currentElement" value="#session.selectedIndexes" >
   <s:property value="#session.completeArrayList[#currentElement]" />
</s:iterator>
于 2012-12-28T08:54:04.417 に答える
1
<s:iterator var="itr" value="#session.completeArrayList" status="stat">
  <s:iterator var="ind" value="#session.selectedIndexes">
    <s:if test="#stat.count == #ind">
      I found #stat.count in selectedIndexes ArrayList
    </s:if>
  </s:iterator>
</s:iterator>
于 2012-12-28T07:04:54.393 に答える