struts2--表单标签
struts2的表单标签可分为两类:form标签本身和包装HTML表单元素的其他标签。form标签本身的行为不同于它内部的元素。
struts2表单标签包括:
form、textfield、password、radio、checkbox、checkboxlist、select、doubleselect、combobox、optiontransferselect、optgroup、updownselect、textaarea、hidden、file、label、submit、token、head
checkbox 输出一个复选框
checkboxlist 输出一个复选框列表
combobox 输出一个部件,可以从下拉框的内容填充一个文本框
datepicker 输出一个日期选择不见,使用了javaScript和DOM
doubleselect 输出一个双选下拉框部件,第二个下拉框依赖第一个
head 输出对应theme的head部分的内容,例如css和javaScript引用
file 输出一个文件选择框
form 输出一个form表单
hidden 输出一个hidden表单字段
label 输出一个label
optionstransferselect 输出一个选项移动下拉组件,主要是两个下拉框和用来在两个下拉框之间移动选项的按钮
password 输出一个密码输入框
radio 输出一个单选框
reset 输出一个reset表单按钮
richtexteditor 输出一个富文本编辑器
select 输出一个下拉框
submit 输出一个文本输入框
token 输出一个隐藏的字段来防止多次提交表单
updownselect 输出一个下拉框组件,带有上下按钮来移动下拉框组件元素
本多表单标签(form标签除外)的name属性和value属性之间存在一个独特的关系。name属性除了为html表单元素指定名字,在表单提交时作为请求参数的名字外,同时它还映射到Action的属性。
在大多数情况下,name属性映射到一个简单的JavaBean属性,例如name属性的值为"postalCode",在表单提交后,struts2框架将会调用Action的setPostalCode()方法来设置属性。
有的时候你希望在表单元素中显示Action属性的数据,这时就轮到value属性,为value属性指定表达式%{postalCode},将会调用Action的getPostalCode()方法,并在表单中显示返回的数据,之后,用户可以编辑这个值,然后提交他。
1、form标签
form标签输出一个html输入表单,此外,xhtml主题的form标签还输出表单元素外围的表格。
-
通常情况下,挡墙输出表单的请求和提交表单的请求属于同一个命名空间。例如:请求/admin/updateCategory!default.action输出的表单,命名空间会被假设为/admin,因此在使用form标签时,可以不使用namespace属性。如:<s:form action="updateCategory">如果输出表单的请求和提交表单的请求分数不同的名称空间,那么可以通过namespace属性指定处理表单的action所属的名称空间。
-
若通过action的一个非execute方法输出表单,然后将表单提交给action默认的execute方法执行,那么form标签的action属性可以忽悠。如: <s:form> <s:textfeld name="username" label="用户名"/> <s:submit/> </s:form> 当访问/register!default.action时,输出上表单,form标签会自动将Action属性设为register,这样在表单提交后就会执行action的execute方法。
-
methoe和enctype是html form 标签的属性。
-
当使用验证框架时,将form标签的validate属性设为true,将自动生成客户端的JavaScript验证代码。<s:form action="register"method="post"/>
struts2默认的主题是xhtml,上述代码在客户端浏览器中的上输出如下:
<s:form id="register" onsubmit="return true" action="register" method="post">
<table class="wwForm Table"></table>
</s:form>
可以看到form标签内容部分输出了一个table元素。
2、textfield标签
textfield标签输出一个HMTL单行文本输入控件,等价于:<input type="text" .../>
<s:form action="register" method="post">
<s:textfield name="username" lable="用户名"/>
3、password标签
password标签输出一个HTML口令输入控件,等价于:<input type="password" .../>
4、textarea标签
textarea标签输出一个html多行文本输入控件,等价于:<textarea ...></textarea>
5、select标签
select标签输出一个html列表框,等价于:<select ...><option ...></option></select>
6、optgroup标签
optgroup标签作为select标签的字标签使用,用于创建选项组。你可以在select标签的标签体中使用一个或者多个optgroup标签,对选项进行逻辑分析组。注意,optgroup标签本身不能嵌套。
7、radio标签
radio标签输出一组hmtl单选按钮,等价于:<input type="radio" .../>
8、checkbox标签
checkbox标签输出一个html复选框,等价于:<input type="checkbox" .../>
9、checkboxlist标签
checkboxlist标签使用一个列表创建一系列复选框,属性设置与<s:select/>和<s:radio/>类似,只是创建的是html复选框。不同的是,checkboxlist标签是多选标签。
<s:form>
<s:checkboxlist name="interest" list="{'足球','篮球','排球','游泳'}"/>
10、hidden标签
hidden标签输出一个html隐藏表单元素,等价于:<input type="hidden" .../>
<s:hidden name="id" value="5"/>
11、submit标签
submit标签输出一个提交按钮。submit标签和form标签一起使用可以提供异步表单提交功能。submit标签可以输出以下三种类型提交按钮。
input:等价于:<input type="submit" .../>
image:等价于:<input type="image" .../>
button:等价于:<input type="button" .../>
13、reset标签
15、token标签和file标签
16、非表单标签
转自http://blog.sina.com.cn/s/blog_8417657f01011cid.html