就像使用jsp标签库一样(c标签),struts-2.0的标签库称为s标签,提供可以扩展的主题and模板支持,在使用时,需要在jsp页面中表名引入:
—><%@taglib prefix="s" uri="/struts-tags" %>
标签分为三类:
one.通用标签
a.数据标签
b.控制标签
two.UI标签
three.Ajax标签
__________________________________________________________________________________**数据标签**:
s:property value用来获取ognl的表达式
s:debug 查看值栈和栈上下文中的数据
s:date 输出日期数据 format --> 指定要输出的日期格式
s:set 对设定的表达式求值,并把值赋给一个新的变量名,其中value是要求的变量的值,var是用来接收的变量名,scope是变量的生存周期,在对更深层次的访问时,简化代码
注:在使用set后调用该变量时一定要加#,否则访问不到
s:url 用来生成一个url,var该URL的引用名,action是要访问的action的名字,value要访问的目标,如果action不提供,就回使用value作为url的地址值
s:a href里的值是跳转的地址,
当s:url和s:a结合使用时,href调用s:url的var引用名时,需要用%{} 把var的值包起来,因为s:url产生的是字符串,s:a 需要的是一个地址,需要把字符串转换成需要的地址..
s:include 包含进其他页面内容,但在传递参数时,由于未经过 action ,没有对值栈里的数据造成改变,所以在包含进的页面里如果想要获取传递的参数时 ,可以通过el表达式,但s标签获取不到.......(无法理解欢迎留言)
__________________________
控制标签
s:if
s:elseIf
s:else
在这些标签里 test表示是否符合条件本身是一个ognl表达式,运算结果是一个boolean值
s:iterator 用来处理循环
var 变量名称 value 循环体 status 当前循环的各种信息 count :循环体里的对象总数
index :当前的索引
UI标签
用来生成web界面,或者为web界面提供某些特定功能支持
实现是基于模板和主题的
_>>>什么是主题和模板?
模板:就是一些代码,sturts2中常用的是freeMark编写的文件,(.ftl)用来生成HTML,在Struts2核心包下的template包中
主题:
ognl变字符串 用单引号引起来
字符串变ognl 用%{} 包起来
-------------------------
联动标签 ,二者默认会处于两个行,因为在jar包里的文档间有br ,若让二者处于一行,方法有二:
1/修改源文件,删除br
2/css样式里的display ,赋值none 当然要用div框起来,并用标签选择器选择br……