Struts2 控制标签(七)输出隔行不同颜色效果

本文介绍如何使用Struts2框架结合JavaBean显示列表,并通过status属性实现隔行换色效果。具体步骤包括创建JavaBean、Action类、JSP页面及配置struts.xml。
1.创建JavaBean
package com.wl.control.Bean;

public class BBS {

private String title;

private String author;

public String getAuthor() {
return author;
}

public void setAuthor(String author) {
this.author = author;
}

public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}
}

2.创建Action
package com.wl.control.tagsAction;

import java.util.ArrayList;
import java.util.List;

import com.opensymphony.xwork2.ActionSupport;
import com.wl.control.Bean.BBS;

public class ShowListColor extends ActionSupport {

private List listBBS=new ArrayList();

public List getListBBS() {
return listBBS;
}

public void setListBBS(List listBBS) {
this.listBBS = listBBS;
}

@Override
public String execute() throws Exception {

BBS bbs1=new BBS();
bbs1.setAuthor("张三");
bbs1.setTitle("我是张三");

BBS bbs2=new BBS();
bbs2.setAuthor("李四");
bbs2.setTitle("我是李四");

BBS bbs3=new BBS();
bbs3.setAuthor("王五");
bbs3.setTitle("我是王五");

BBS bbs4=new BBS();
bbs4.setAuthor("赵六");
bbs4.setTitle("我是赵六");

BBS bbs5=new BBS();
bbs5.setAuthor("李七");
bbs5.setTitle("我是李七");

BBS bbs6=new BBS();
bbs6.setAuthor("孙八");
bbs6.setTitle("我是孙八");

listBBS.add(bbs1);
listBBS.add(bbs2);
listBBS.add(bbs3);
listBBS.add(bbs4);
listBBS.add(bbs5);
listBBS.add(bbs6);
return "showlistcolor";
}

}

3.创建JSP文件
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%@ taglib uri="/struts-tags" prefix="s" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>

<body>
<table width="589" height="52" cellpadding="0" cellspacing="0" border="0">
<tr>
<td bgcolor="#0000CC">序号</td>
<td bgcolor="#0000CC">标题</td>
<td bgcolor="#0000CC">作者</td>
</tr>
<s:iterator value="listBBS" var="BBSJavaBean" status="status">
<s:if test="#status.odd">
<tr>
<td><s:property value="#status.count" /></td>
<td><s:property value="#BBSJavaBean.title" /></td>
<td><s:property value="#BBSJavaBean.author" /></td>
</tr>
</s:if>
<s:else>
<tr>
<td bgcolor="#999999"><s:property value="#status.count" /></td>
<td bgcolor="#999999"><s:property value="#BBSJavaBean.title" /></td>
<td bgcolor="#999999"><s:property value="#BBSJavaBean.author" /></td>
</tr>
</s:else>
</s:iterator>
</table>
</body>
</html>

注释:隔行不同颜色的关键代码如下:
[color=red][b]<s:iterator value="listBBS" var="BBSJavaBean" status="status">[/b][/color]
其中,status属性值保存的是当前遍历的一些基本信息,有如下取值:
[table]
|first|是否是第一个元素|
|last|是否是最后一个元素|
|index|取得当前遍历的索引|
|odd|当前遍历的索引是否为奇数|
|even|当前遍历的索引是否为偶数|
|count|已经遍历了多少个记录|
[/table]
4.修改struts.xml文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="Struts2.1" extends="struts-default">
<action name="showlistcolor" class="com.wl.control.tagsAction.ShowListColor">
<result name="showlistcolor">/controlTags/showlistcolor.jsp</result>
</action>
</package>
</struts>

5.运行结果:

[img]http://dl.iteye.com/upload/attachment/380433/bb627e52-180e-3b20-a6a6-c93da47f0eec.png[/img]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值