没有合适的资源?快使用搜索试试~ 我知道了~
首页struts2标签库struts2标签库struts2标签库
struts2标签库struts2标签库struts2标签库
需积分: 9 216 浏览量
更新于2023-03-16
评论 1
收藏 363KB DOC 举报
struts2标签库struts2标签库struts2标签库struts2标签库
资源详情
资源评论
资源推荐

struts2 标签库总结
struts2 标签是 struts2 的重点,和 action 配合使用,就是 struts2 的重点。偶第一次使用 struts2,就觉
得比 jsp/servlet 这样的方案,容易多了。在 jsp 放个 input 之类的文本框,在 servlet 中用
request.getParameter()来获取值 insert 数据库,然后再用 request.setAttribute()来给页面返回值。
代码量非常可观。
但 struts2 中就方便多了。偶一般的写法是这样的。写一个 JAVA 类继承 ActionSupport,然后在 JSP
页面是就可以直接使用了。
例:<s:text#eld name="" label="" />
言归正传,struts2 的标签分为 UI 标签和非 UI 标签。下面就 struts2 与 html 作个对比.在此推荐一个
eclipse html 插件
eclipse tidy: http://sourceforge.net/project/show#les.php?group_id=68009
文本框:
Struts2:
<s:text#eld name="" label="" />
如果是日期型,可使用<s:date name="Date" format="yyyy-MM-dd" />
由于 struts2 支持使用 el 表达式,所以也 text#eld 可写
<s:text#eld name="Date" label="Date" value={Date}/>
HTML:
<input type="text" name="text#eld1">
列表框:
Struts2:
固定值:
<s:select
tooltip="ChooseYourFavouriteColor"
label="FavoriteColor"
list="{'Red','Blue','Green'}"
name="favoriteColor"
emptyOption="true"
headerKey="None"
headerValue="None"/>
动态列表:
<s:select
tooltip="ChooseYourFavouriteLanguage"
label="FavouriteLanguage"
list="favouriteLanguages"
name="favouriteLanguage"
listKey="key"

listValue="description"
emptyOption="true"
headerKey="None"
headerValue="None"/>
注:如果采用动态列表,必须用 action 访问,如果用 JSP 访问会报错.
list 指 action 中的 list、map 等集合类,
listKey 相当于 html 中的 value
listValue 相当于 html 中 select 显示的值
emptyOption 是否为空
headerKey、headerValue 初始的键、值
HTML:
<select name="lst_QproProduce" id="lst_QproProduce">
<option value="1" selected>英语</option>
<option value="2" selected>汉语</option>
</select>
URL 参数传递:
Struts2:
<s:praram name="test" value="testValue" />
例:<a href='<s:url="test.action">
<s:paramname="test"value="testValue"/></s:url>'> urlTest </a>
HTML:
url?name = testValue
例:192.168.1.1/test.action?name=testValue
日期下拉框:
Struts2:
<s:datetimepicker
label="toggleType='wipe'"
value="${orderMain.orderDate}"
toggleType="wipe"

toggleDuration="300"
displayFormat="yyyy-MM-dd"
name="orderMain.orderDate"/>
说明:${orderMain.orderDate}取类的值,这个参数也可不写,用 name 就可以。
使用该 tag 时要在</head>前要加入<s:head/>。
HTML:
只能用 js 写了.事实上 struts2 的 datetimepicker 也是 js 的封装.
隐藏域:
strut2:
<s:hidden name="Value"/>
HTML:
<input type="hidden" name="orderMain.orderId" value="1" />
另外,struts2 的 tag 是默认在 enter 时自动提交表单,要屏蔽此功能。在 onkeydown 事件中加入键
盘触发代码。
例:if(event.keyCode==13) event.keyCode=9;就是将回车转成 tab 键.
还有一种方法更为简便方法:
//回车转 Tab
function EnterTabGlobal(){
document.onkeydown=function keyDown(){
if(event.keyCode==13)
event.keyCode=9
}
}
//在 onLoad 执行
//////////////////////////////////////////////////////////////////////////////////////
struts2 标签详解
要在 jsp 中使用 Struts2 的标志,先要指明标志的引入。通过 jsp 的代码的顶部加入以下的代码:
<%@taglib prefix="s" uri="/struts-tags" %>
If elseif else
描述:
执行基本的条件流转。
参数:
名称 必
需
默认 类型 描述 备注
test
是
boolean
决定标志里 else 标

的内容是否显示的
表达式
志没有这个参
数
id
否
Object/
String
用来标识元
素的 id。在 UI 和表
单中为 HTML 的 id
属性
例子:
<s:set name="age" value="61"/>
<s:if test="${age > 60}">
老年人
</s:if>
<s:elseif test="${age > 35}">
中年人
</s:elseif>
<s:elseif test="${age > 15}" id="wawa">
青年人
</s:elseif>
<s:else>
少年
</s:else>
<s:set name="name" value="<%="'"+ request.getParameter("name")+"'" %>"/>
<%
System.out.println(request.getParameter("name"));
%>
<s:if test="#name=='zhaosoft'">
zhaosoft here
</s:if>
<s:elseif test="#name=='zxl'">
zxl here
</s:elseif>
<s:else>
other is here
</s:else>
Iterator(迭代)
描述:用于遍历集合(java.util.Collection)或枚举值(java.util.iterator)
参数
名称 必需 默认 类型 描述
status
否
String
如果设置此参数,一个
IteratorStatus 的实例将会
压入每一个遍历的堆栈
value
否
Object/
要遍历的可枚举的
剩余17页未读,继续阅读















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0