iteye_15937
2009-05-08 01:35
浏览 269
已采纳

Struts2的一个迭代器s:iterator中嵌套s:if的问题,急,急,急......

<s:iterator id="pjctapply" value="#request['projectApply']">
        <tr  bgcolor="#FFCC66" height="24">
          <td><div align="center"><s:property value="#pjctapply[0]"></s:property></div></td>
          <td><div align="center"><s:property value="#pjctapply[1]"></s:property></div></td>
          <td><div align="center"><s:property value="#pjctapply[2]"></s:property></div></td>
          <td><div align="center"><s:property value="#pjctapply[3]"></s:property></div></td>
          <td><div align="center"><s:property value="#pjctapply[4]"></s:property></div></td>

          <td><div align="center"><s:if test="#pjctapply[6]=='等待主管审批'">操作项目</s:if></div></td> 
         </tr>
</s:iterator>

 

问题是:<td><div align="center"><s:if test="#pjctapply[6]=='等待主管审批'">操作项目</s:if></div></td> 
这一行条件永远都不成立,貌似是<s:if>写错了,没写过这样的判断。郁闷啊。我的目的就是要判断数组中的第7个元素值是不是“等待主管审批'”,该怎么来写呢?

说明:value="#request['projectApply']" 中的'projectApply 其实是个list,其中存储的每个元素就是个字符数组。在Struts2的action代码中是这样的

 

Map request = (Map) ActionContext.getContext().get("request");
  List list = new ArrayList();
  for(ProjectApply p:pas){
   String[] inf = new String[9];
   inf[0]=p.getApplyName();
   inf[1]=userService.getUserById(p.getUploaduserid()).getOrganization().getOrgName();
   inf[2]=userService.getUserById(p.getUploaduserid()).getTrueName();
   inf[3]=userService.getUserById(p.getAudituserid()).getTrueName();
   inf[4]=p.getApplyDate().toLocaleString();
   inf[5]=p.getDocumentName();
   inf[6]=p.getFinalStatus();
   inf[7]=p.getApplyId()+"";
   inf[8]=p.getUploaduserid()+"";
   list.add(inf);
  }
//  list.add(arg0);
  request.put("projectApply", list);

 

忘各位指点我啊。waiting。。。

 

 

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • chenli348105874 2009-05-08 16:55
    已采纳

    你在pjctapply[6]前面加个#号干吗 加个%{}么还能理解

    评论
    解决 无用
    打赏 举报
查看更多回答(2条)

相关推荐 更多相似问题