表单标签
Struts2的表单标签,可分为两种:form表单本身和单个表单元素的标签。Form标签本身的行为不同于表单元素的标签。Struts2的表单元素标签都包含了非常多的属性,但有很多属性完全是通用的。
一、表单标签的通用属性
所有表单标签处理类都继承了UIBean类,UIBean包含了一些通用属性,分为3种:
1、 模板相关属性
2、 JavaScript相关属性
3、 通用属性
除此之外,所有表单元素标签都存在一个特殊属性:form,通过该属性可以实现表单元素和表单之间的交互。例如,我们可以通过${parameters.form.id}来取得表单元素所在表单的ID。下面是表单标签的通用属性。
模板相关的通用属性如下:
1、 templateDir:指定该表单所用的模板文件目录。
2、 theme:指定该表单所用的主题
3、 template:指定该表单所用的模板
JavaScript相关的通用属性如下:
1、 onclick:指定鼠标在该标签生成的表单元素上单击时触发的JavaScript函数。
2、 ondbclick:指定鼠标在该标签生成的表单元素上双击时触发的JavaScript函数。
3、 onmousedown:指定鼠标在该标签生成的表单元素上按下时触发的JavaScript函数。
4、 onmouseup:指定鼠标在该标签生成的表单元素上松开时触发的JavaScript函数。
5、 onmouseover:指定鼠标在该标签生成的表单元素上悬停时触发的JavaScript函数。
6、 onmouseout:指定鼠标移除该标签生成的表单元素时触发的函数。
7、 onfocus:指定该标签生成的表单元素得到焦点时触发的函数。
8、 onblur:指定该标签生成的表单元素失去焦点时触发的函数。
9、 onkeypress:指定单击键盘上某个键时触发的函数。
10、 onkeyup:指定松开键盘上某个键时触发的函数。
11、 onkeydown:指定按下键盘上某个键时触发的函数。
12、 onselect:对下拉列表项等可以选择表单的元素,指定选中该元素时触发的JavaScript函数。
13、 onchange:对于文本框等可以接受输入的表单元素,指定当值改变时触发的javaScript函数。
因为Html本身的限制,并不是每个Html元素都可以触发以上的所有函数。因此,上面的属性并不是对Struts2 的每个标签都有效。
Struts2还允许为表单元素设置提示,单鼠标在这些元素上停悬时,系统将出现提示。Struts2将这种特性称为Tooltip。相关的通用属性如下:
1、 tooltip:设置此组件的Tooltip。
2、 tooltipIcon:设置Tooltip图标的URL路径。
3、 tooltipAboveMousePointer:是否在光标位置上显示Toopltip。也可以通过设置tooltipOffseY属性,设置Tooltip与光标位置的垂直位移。
4、 tooltipBgColor:设置Tooltip的背景色。
5、 tooltipBgImg:设置Tooltip的背景图片。
6、 tooltipBorderWidth:设置Tooltip边框的宽度
二、表单标签的name和value属性
Name和value属性之间存在一个独特的关系:因为表单元素的name属性会映射到Action的属性当对应的Action已经被实例化,且对应属性有值时,表单元素会显示出该属性的值,该值就是表单元素的value值。
三、checkboxlist标签
checkboxlist标签可以一次创建多个复选框,要根据list属性指定的集合。还有两个常用的属性。
1、 listKey:该属性指定集合元素中的某个属性作为复选框的value值
2、 listValue:该属性指定集合元素中的某个属性作为复选框的标签。
四、doubleselect标签
doubleselect标签会生成一个级联列表框(会生成两个下拉列表框),当选第一个列表框时,第二个的内容也会随之改变。常用属性如下:
1、 list:指定用于输出第一个下拉列表框中选项的集合
2、 listKey:该属性指定集合元素中的某个属性作为复选框的value值
3、 listValue:该属性指定集合元素中的某个属性作为复选框的标签。
4、 doubleList:指定用于输出的第一个下拉列表框中选项的集合
5、 doubleList key:该属性指定集合元素中的某个属性作为复选框的value值
6、 doubleList Value:该属性指定集合元素中的某个属性作为复选框的标签。
7、 doubleName:指定第二个下拉列表框的name属性。
五、head标签
六、optiontransferseselect标签
七、select标签
八、radio标签
九、optgroup标签
十、token标签
十一、 updownselect标签
非表单标签
一、actionerror和actionmessage标签
二、component标签
三、tree和treenode初步