我是struts 2的新手,並且在使用迭代器標籤在我的JSP中迭代集合集合時失去了主意。struts2迭代器標籤 - 遍歷集合集合
我的動作類公開了一個List(父),它又包含4個列表(子)。每個子列表包含5個域對象(e.g. User
)。
在我的JSP中,我需要在迭代集合之後顯示User.Name。我能夠遍歷父集合,但無法訪問子列表。它們是匿名列表,不會以特定名稱公開(即,吸氣劑不可用)。
<s:iterator value="usrList" var="refParent">
<ul>
<s:iterator value="#refParent.columns" var="usr">
<li>
<s:property value="#usr.Name"/>
</li>
</s:iterator>
</ul>
</s:iterator>
在4個<ul>
標籤,但每個這些標記的外迭代結果顯示空的,即沒有一個<li>
標籤。
我看到的所有示例都訪問特定的指定集合(例如User.PhoneList
),但它們都沒有顯示出這種特定行爲。
任何幫助是極大的讚賞
你是什麼意思,他們是「匿名列表」?你如何訪問Java中的列表?這在JSP中是一樣的。 –
你嘗試過「#usr.name」嗎?我很少需要var屬性。你應該能夠移除外部迭代器上的var,內部使用「columns」作爲值,你也可以把var放在內部迭代器中,並且在屬性中簡單地使用「name」,或者如果它是類似於內置類型列表,然後使用空屬性標記(它將使用堆棧頂部的內容)。 – Quaternion
@Dave:通過匿名列表,我的意思是我的第二個集合不是一個命名的屬性。我的結構基本上是一個List1(父),它包含4個List(List2),它們使用'add'方法添加到List1,然後List2集合包含我想要在JSP中訪問的域對象。 – user1781912