+ -
当前位置:首页 → 问答吧 → strusts2中<s:iterator>问题

strusts2中<s:iterator>问题

时间:2011-11-08

来源:互联网

现在做项目遇到一个问题,我数据库中有两个表,相册表albuminfo和照片表photoinfo,相册表不是照片表的外键,但他们通过一个字段关联albuminfo.id和photoinfo.albumid,我想展示相册时,使用与之对应的图片中的第一张照片,怎么实现?
通过用户或得了该用户的相册集合albumSet和照片的集合photoSet
我在页面中这样写的
<s:iterator value="albumSet" var=a>
  <s:iterator value="photoSet" var="p">
  <s:if test="#a.id==#p.albumid">
  <img src="${pageContext.request.contextPath}/upload/${p.photourl}"
  </s:if>
  </s:iterator>
</s:iterator>
这样写出错,请问高手怎么解决这个问题,实现这种效果,谢谢大家了!

作者: li_qingxue   发布时间: 2011-11-08

<s:iterator   value= "albumSet "   var=a>
    <s:iterator   value= "photoSet "   var= "p ">
    <s:if   test= "#a.id==#p.albumid ">


albumSet     (#a.id)  
  是哪里的值啊?

作者: x1835340738   发布时间: 2011-11-08

albumSet (#a.id) 就是相册表albuminfo表中得主键id啊,有什么不明白的尽管问啊

作者: li_qingxue   发布时间: 2011-11-08

用#p.first获得第一张照片呢?

iterator标签中具有一些方法: 
  boolean isEven() 当前迭代元素索引是否为偶数; 
  boolean isOdd() 当前迭代元素索引是否为奇数; 
  boolean isLast() 是否为最后一条元素; 
  boolean isFirst()是否为第一条元素

作者: lyhmy   发布时间: 2011-11-08

<s:iterator value="albumSet" id="a">
  <s:iterator value="photoSet" id="p">
  <s:if test="#a.id==#p.albumid">
  <img src="<s:property value="pageContext.request.contextPath"/>/upload/<s:property value="p.photourl"/>"
  </s:if>
  </s:iterator>
</s:iterator>

作者: getserved   发布时间: 2011-11-08

引用 4 楼 getserved 的回复:

<s:iterator value="albumSet" id="a">
<s:iterator value="photoSet" id="p">
<s:if test="#a.id==#p.albumid">
<img src="<s:property value="pageContext.request.contextPath"/>/upload/<s:property v……


这是把该相册下的所有照片都遍历出来了啊,我只是想要第一张,做该相册的封面怎么实现啊???

作者: li_qingxue   发布时间: 2011-11-08

引用 3 楼 lyhmy 的回复:

用#p.first获得第一张照片呢?

iterator标签中具有一些方法:
boolean isEven() 当前迭代元素索引是否为偶数;
boolean isOdd() 当前迭代元素索引是否为奇数;
boolean isLast() 是否为最后一条元素;
boolean isFirst()是否为第一条元素


#p.first我要获取每个相册下的第一张照片,应该是该照片的路径,如果是#p.first.photourl好像不行吧

作者: li_qingxue   发布时间: 2011-11-08