如何使用struts 和 一起?

问题描述 投票:2回答:2

我有名为allAlbumsallPhotos的对象列表。现在我想显示每张专辑中的所有照片,所以我使用了以下方法。我的代码是

<s:iterator value="allAlbums">
  <s:iterator value="allPhotos">
    <s:if test="%{#allAlbums.albumid == #allPhotos.albumid}">
      <s:property value="photourl"/>
    </s:if>
  </s:iterator>                             
</s:iterator>

但它没有用。有什么建议我做错了什么?

java jsp struts2 ognl
2个回答
4
投票

确保你的对象都有适当的getter / setter,然后你可以使用OGNL提供的名为projection的功能。

<s:iterator value="allAlbums" var="album">
  <s:iterator value="allPhotos.{? #this.albumid == #album.albumid}">
      <s:property value="photourl"/>
  </s:iterator>                             
</s:iterator>

2
投票

您正在引用错误的对象。为您将引用的记录定义var属性并改为引用它。

<s:iterator var="album" value="allAlbums">
  <s:iterator var="photo" value="allPhotos">
    <s:if test="#album.id == #photo.albumId">
      <s:property value="photoUrl"/>
    </s:if>
  </s:iterator>                             
</s:iterator>
© www.soinside.com 2019 - 2024. All rights reserved.