comboboxlabel="请选择您喜欢的图书"theme="css_xhtml"labelposition="top"
list="{'Spring2.0','J2EE','Ajax'}"
size="20"maxlength="20"name="book"/>
更多 combobox 信息
conponent
conponent标签用于使用自定义标签。
因为使用自定义组件还是基于主题,模板管理的,因此在使用component标签,常常需要指定如下3个属性:
theme:
自定义组件所使用的主题,默认使用xhtml主题。
templateDir:
指定自定义组件的主题目录,默认使用系统的主题目录,即template目录。
template:
指定自定义组件所使用的模板。
示范代码:
componenttemplate="mytemplate.jsp">
paramname="list"value="{'Spring2.0','J2EE','Ajax'}"/>
component>
更多 conponent 信息
date
date标签用于格式化输入一个日期,还可以计算指定日期和当前时刻之间的时差。
示范代码:
date name="#attr.now" format="dd/MM/yyyy" nice=“true”/>
更多 date 信息
datetimepicker
datetimepicker标签就是生成一个有日期控件的文本输入框。
它有一个前提就是要在
内加一个"headtheme="ajax"/>",然后可以在form内加上该标签。
示范代码:
datetimepicker name="user.birthday" label="出生日期" value="%{'2008-9-20'}"/>
更多 datetimepicker 信息
debug
debug标签主要用于辅助测试,它在页面上生成一个超链接,通过该链接可以查看ValueStack和StackContext中的所有值信息。
使用debug标签只有一个id属性,这个属性仅仅是该元素一个引用id。
在页面上增加debug/>标签,通过debug标签,可以看的系统中ValueStack离得全部信息,并可以看到StackContext中的属性。
debug>
debug>
//直接在jsp页面上面添加这样的标签,就可以生产一个查看debug信息的链接
更多 debug 信息
示范代码:
div
div是struts2ajax中最基础的标签,其他的标签均和div有关系。
div的最大的用途就是可以异步的更新div中的内容。
这里写一些div基本的应用,其他的等写别的标签的时候再写。
示范代码:
divhref="%{url}">InitialContent
div>
--最简单的例子,从指定的url获取信息更新自己的内容-->
更多 div 信息
doubleselect
doubleselect标签输出关联的两个HTML列表框,产生联动效果。
doubleselect
label="请选择所在省市"name="province"list="provinces"listKey="id"
listValue="name"doubleList="cities"
doubleListKey="id"doubleListValue="name"
doubleName="city"headerKey="-1"
headerValue="---请选择---"
emptyOption="true"/>
更多 doubleselect 信息
else
else标签用来控制基本的条件处理流程,通常和if、elseif标签连用。
例子
iftest="%{false}">
WillNotBeExecuted
if>
elseiftest="%{true}">
WillBeExecuted
elseif>
else>
WillNotBeExecuted
else>
更多 else 信息
elseif
elseif标签用来控制基本的条件处理流程,通常和if标签连用。
例子
iftest="%{false}">
...
if>
elseiftest="%{true}">
WillBeExecuted
elseif>
else>
...
else>
更多 elseif 信息
fielderror
fielderror标签输出action的fieldErrors属性保存的字段错误,fieldErrors是一个map类型的属性。
示范代码:
fielderror/>
更多 fielderror 信息
file
file标签输出一个HTML文件选择框,等价于html代码:
。
示范代码:
filename="uploadfile"accept="text/*"/>
filename="uploadfile"accept="text/html,text/plain"/>
更多 file 信息
form
form标签输出一个HTMLfrom
例子:
formaction="exampleSubmit"method="post"enctype="multipart/form-data">
submit />
reset />
form>
可以上传文件的form。
更多 form 信息
generator
使用generator标签可以将指定字符串按指定分隔符分成多个子串,临时生成的多个子串可以使用iterator标签来迭代输出。
可以这样理解:
generator将一个字符串转化成一个集合。
在该标签的标签体内,整个临时生成的集合将位于ValueStack的顶端,蛋一旦该标签结束,该集合将被移出ValueStack。
更多 generator 信息
head
head标签主要用于成生HTML主要页面的HEAD部分。
国为有些主题需要包含特定的CSS和javascript代码,而该标签则用于生成对这此CSS和javaScript代码的引用。
示范代码:
page1
head/>
更多 head 信息
hidden
hidden标签输出一个HTML隐藏表单元素,等价于HTML代码:
。
在xhtml主题下,hidden标签与其他的标签不一样,hidden标签并不输出表行。
xhtml主题直接从simple主题继承了
hidden.ftl模板。
示范代码:
hiddenname="id"value="s"/>
更多 hidden 信息
i18n
该标签用于加载资源包到值堆栈。
它可以允许text标志访问任何资源包的信息,而不只当前action相关联的资源包。
示范代码:
i18nname="ApplicationMessages">
textname="HelloWorld"/>
i18n>
更多 i18n 信息
if
If标签用来控制基本的条件处理流程,通常和else标签或者elseif标签连用。
例子:
iftest="%{false}">
WillNotBeExecuted
if>
更多 if 信息
include
include标签 用于将一个JSP页面,或者一个Servlet包含到本页面中。
示范代码:
使用s:
include标签来包含目标页面
include value="include-file.jsp"/>
--使用include标签来包含其他页面,并且传入参数-->
include value="include-file.jsp">
param name="author" value="'yeeku'" />
include>
更多 include 信息
inputtransferselect
获取form的一个输入
更多 inputtransferselect 信息
iterator
迭代处理一个java.util.Connection或者java.util.Iterator对象
例子:
iteratorvalue="users"status="userStatus">
propertyvalue="fullName"/>
iftest="!
#userStatus.last">,
if>
iterator>
更多 iterator 信息
label
xhtml主题下的label标签输出两个HTML的label标签(simple主题下的label标签只输出一个HTMLlabel标签)。
分别位于一行的两列,左列的label标签器提示作用,右列的label标签用于显示只读的action属性数据。
示范代码:
labellabel="用户名"name="user.username"/>
更多 label 信息
merge
合并遍历集合出来的值,与append>标签用法相似。
例子:
mergeid="list">
paramvalue="#request.list1"/>
paramvalue="#request.list2"/>
paramvalue="#request.list3"/>
paramvalue="#request.list4"/>
merge>
iteratorvalue="%{list}">
property/>
iterator>
更多 merge 信息
optgroup
optgroup标签用于生成一个下拉列表框的选项组,因此,该标签必须放在select>标签中使用,一个下拉列表框中可以包含多个选项组,因此可以在一个select>标签中使用多个optgroup>标签。
selectlabel="选择您喜欢的图书"name="book"list="#{'Spring2.0':
'李刚','J2EE':
'李','Ajax宝典':
'李'}"
listKey="value" listValue="key">
optgrouplabel="RodJohnson"
list="#{'ExpertOne-on-OneJ2EEDesignandDevelopment':
'Johnson'}"
listKey="value"
listValue="key"/>
optgrouplabel="DavidFlanagan"
list="#{'JavaScript:
TheDefinitiveGuide':
'David'}"
listKey="value"
listValue="key"/>
select>
更多 optgroup 信息
optiontransferselect
optiontransferselect标签创建一个选项转移列表组建,它由两个
表单提交时,将提交两个列表框中选中的选项。
示范代码:
optiontransferselect
label="最喜爱的图书"
name="javaBook"
list="{'《JavaWeb开发详解》','《Struts2深入详解》','《Java快速入门》'}"
doubleName="cBook"
doubleList="{'《VC++深入详解》','《C++Primer》','《C++程序设计语言》'}"/>
更多 optiontransferselect 信息
param
param标签主要用于为其他标签提供参数
用法:
这里color参数的值是,blue对象的值----如果blue对象不存在,则color为null。
更多 param 信息
password
password>标签类同于HTML的,其name和label类同于textfield>
例子:
password name="password"label="密码"/>
更多 password 信息
property
property标签用于输出值栈中的对象的属性值,使用value属性来指定要输出的对象属性,如果没有指定value属性,那么默认输出栈顶对象。
例子:
propertyvalue="username"default="游客"/>
取出栈顶对象(通常是action)的username属性并输出,如果没有找到username属性,那么输出“游客”。
更多 property 信息
push
push标签用于将某个值放到ValueStack的栈顶,可以跟简单的访问该值。
示范样例:
bean name="lee.Person" id="p">
param name="age" value="29"/>
bean>
push value="#p">
property value="name"/>
propery value="age"/>
push>
更多 push 信息
radio
radio标签的用法与checkboxlist的用法几乎完全相同,一样可以指定label,list,listKey,listValue等属性。
示范代码:
radioname="c"label="请选择您喜欢的图书"labelposition="top"
list="#bs.books"
listKey="author"
listValue="name"/>
更多 radio 信息
reset
reset标签输出一个重置按钮。
示范代码:
resetvalue="重置">
reset>
resettype="button" label="重置">
reset>
更多 reset 信息
select
s:
select标签输出一个下拉列表框,相当于HTML代码中的
示范代码:
form>
selectlabel="最高学历"name="education"list="{'高中','大学','硕士','博士'}"/>
form>
更多 select 信息
set
set标签是将某个值放到指定范围内,比如说student.teacher.parent.age每次访问这个属性不仅性能低,而且代码可读性很差,为了解决这个问题,可以将这个值设置为一个新值,并且放入指定范围内。
使用示范:
setvalue="#p"name="test"/>
propertyvalue="#test.name"/>
propertyvalue="#test.age"/>
sort
对一个可以迭代的对象进行排序操作。
sortcomparator="myComparator"source="myList">
iterator>
--dosomethingwitheachsortedelements-->
propertyvalue="..."/>
iterator>
sort>
更多 sort 信息
submit
Submit标签输出一个按钮,submit标签和form标签使用可以提供异步表单提交功能。
Submit标签可以输出以下三种类型的提交按钮:
Input:
等价于 HTML代码
Image:
等价于 HTML代码
Button:
示范代码:
submitvalue="登陆">
submit>
更多 submit 信息
subset
递归iterator的一部分。
例子:
subsetsource="myList">
iterator>
property/>
iterator>
subset>
更多 subset 信息
tabbedPanel
tabbedPanel>标签,用来在HTML页面中生成类似于Windows程序的Tab页,从而可以在有限的空间中放置更多的内容。
tabbedPanel标签生成的Tab页的内容可以是静态的,也可以是动态的。
示范代码:
tabbedPanelid="tp1"closeButton="pane"theme="ajax"doLayout="true"selectedTab="second" labelposition="left">
divid="first"label="第一个div"theme="ajax">
静态的DIV
div>
divname="second"label="第二个div"theme="ajax"href="%{T}"updateFreq="6000"delay="3000