OGNL表达式----UI标签:
1.表单标签:
<s:form action="XX" method="post">
属性:Action/Method/namespace
javascript:void(null)
2.单行文本标签:--textfield
输出的HTML单行文本输入控件,等价于HTML的代码<input type="text">
常用的属性:
(1)maxlength:文本可输入的字符最大长度
(2)readOnly:当该属性的值为true时,用户不能在文本控件中输入文本
(3)size:指定文本输入控件的可视尺寸
(4)id
(5)name
(6)label
3.文本域输入框:---textarea
属性:
(1)name
(2)label
(3)cols
(4)readonly
(5)wrap
(6)id
4.下拉列表----select
属性:
(1)id
(2)name
(3)label
(4)list:要迭代的集合,使用集合中的元素来设置各个选项,如果list的属性为Map的话,则Map的key成为选项的value,Map的value会成为选项的内容
(5)listkey:指定集合对象中的哪个属性作为选项的value
和listValue:利用Action中的实例属性(property)设置选项的值和选项的内容
(6)headerKey:设置当用户选择了header选项时,提交的value,如果使用该属性,不能为该属性设置空值
(7)headerValue:显示在页面中header选项的内容
(8)emptyOption:在header选项后面添加一个空的选项
(9)multiple:是设置多选
(10)size:设置下拉框可显示的选项个数
用法
(1)list属性为集合
<s:select label="最高学历" name="education" list="{'高中','博士','大学'}"
(2)list为map
<s:select label="最高学历" name="education" list="#{1:'高中',2:'大学',3:"博士"}">
5.password:输出一个密码框。
常用属性:
(1):maxLength:口令输入控件可以输入字符的最大长度
(2)readonly:当该属性的值为true时, 用户不能在口令控件中输入文本
(3)size:可输入的可视尺寸
(4)showPassword:是否显示密码,当为true时,密码被显示。除非特殊需求,否则不要将该属性设为true
6.radio:输出一个单选框。
用来生成一系列的单选框,用户只能选择其中的一个。Struts2的radio标签对应于HTML的<input type="radio"/>。
除了上面列出的各种常见通用属性,radio标签还有几个其它的属性:
~list:用于生成单选框的集合,必须配置。
~listKey:生成的radio的value属性。
~listValue:生成的radio后面显示的文字。
这三个属性一定要配合使用,由list属性指定从哪个集合中获得元素,由listKey属性指定获得元素之后使用元素的哪个属性作为生成的<input type="radio"/>的value属性,由listValue属性指定生成的<input type="radio"/>后的给用户看的文字。
7.checkbox:
用来输出一个HTML复选框,等价于HTML代码:<input type="checkbox"/>。
8.checkboxlist:输出一个复选框列表。
复选框组用来生成一系列复选框,用户可以选择其中的零到多个,Struts2的checkboxlist标签用来生成一组<input type="check"/>。
这个标签和上面介绍的radio标签的属性极其类似,除上面列出常见通用属性,其主要属性有:
~list:用于生成复选框的集合。
~listKey:生成的checkbox的value属性。
~listValue:生成的checkbox后面显示的文字。
这三个属性的用法与radio标签的那三个属性相同。
9.doubleselect标签:
doubleselect标签是select标签的扩展,当有大量的选项要给用户做选择时,可以使用这个标签。例如需要用户先选择国家,再选择省份,再选择市等等更多选择时,可以使用doubleselect这个标签。其中和select不同的地方,doubleselect标签的第一个下拉框是一个分组的列表可以通过list属性来指定。通过使用JavaScript等方法,第二个下拉框会随着第一个下拉框的选择不同而不同。
10.(13).optiontransferselect标签:
用来生成两个下拉框,这两个下拉框左右放置,有按钮可以控制,将选项在两个下拉框之间转移,在每个下拉框下还有按钮,可以像updownselect标签那样控制选项上下移动。
optiontransferselect标签的主要属性可以分为4组:
~~控制左下拉框名字以及数据来源:
name:左下拉框的name属性。
list:用于生成左下拉框的集合。
listKey:生成左下拉框的选项的value属性。
listValue:生成左下拉框的选项显示的文字。
headerKey:在左下拉框所有的选项前再额外加一个选项作为其标题,headerKy设置的是标题的value属性。
headerValue:在左下拉框所有的选项前再额外加一个选项作为其标题,headerValue设置得是标题的显示文字。
11.combobox:输出一个部件,可以从下拉框的内容填充一个文本框。
Struts2的combobox标签用于生成一个文本框和一个下拉框,下拉框出现在文本框的下面,在最终提交的时候只提交文本框的输入值,下拉框用于在其选项改变时,也就是onchange事件被触发时,把自身的被选中项的值赋到文本框上。
combobox的属性分别来自文本框和下拉框:
~来自文本框的属性:
maxlength:单行文本框中所能容纳的最大文本长度。
size:单行文本框自身的长度。
readonly:单行文本框是否只读。
~来自下拉框的属性:
list:用于生成下拉框的集合。
listKey:生成的选项的value属性。
listValue:生成的选项显示的文字。
12.optiontransferselect:
输出一个选项移动下拉组件,主要是两个下拉框和用来在两个下拉框之间移动选项的按钮。
13.updownselect:
输出一个下拉框控件,带有上下按钮来移动下拉框组件元素。
用来生成一个可以自由上下移动选项的下拉框。生成选项的用法和Struts2的select标签一样,都是由list、listKey、listValue三个属性来设置。
这里只需要了解关于上下操作的几个属性:
~allowMoveUp:是否显示“上移”按钮,默认为显示。
~allowMoveDown:是否显示“下移”按钮,默认为显示。
~allowSelectAll:是否显示“全选”按钮,默认为显示。
~moveUpLabel:上移按钮显示的文本。
~moveDownLabel:下移按钮显示的文本。
~selectAllLabel:全选按钮显示的文本。
14.textarea:输出一个多行文本框。
15.hidden:输出一个hidden表单字段。
16.file:输出一个文件选择框。
17.label:输出一个label。
18.submit:输出一个submit(提交)表单按钮。
常用属性:
(1)type:要使用的提交按钮的类型,有效值为:input、button、image
(2)src:为image类型的提交按钮设置图片地址,该属性对input和button类型的提交按钮无效
(3)action:指定处理提交请求的action
(4)method:指定处理提交请求的action的方法
19.token:输出一个隐藏的字段来防止多次提交表单。
20.head:输出对应theme的head部分的内容,比如Css和JavaScript的引用。
21.datepicker:输出一个日期选择部件,使用JavaScript和DOM。
22.reset:输出一个reset(重置)表单按钮。
23.richtexteditor:输出一个富文本编辑器。
24.optgroup标签:作为select的子标签,用来生成一组选项。一个下拉列表框中可以包含多个选项组,可以在一个<s:select>标签中使用多个<s:optgroup>标签。
optgroup标签的主要属性有:
~list:用于生成下拉框选项的集合。
~listKey:生成的选项的value属性。
~listValue:生成的选项显示的文字。
~label:用于生成选项组的文本。