首先我们要导入struts标签库
<%@ taglib uri="/struts-tags" prefix="s"%>
1.set标签
eg:
<s:set var="test1" value="result"></s:set>
意思是:在ognl上下文的根对象中取result值,赋 给test1
注意:value里面填的是表达式
- property
<s:property />
默认取的栈顶
<s:property value="num1"/>
取根对象最上面的属性
<s:property value="cal2.num1"/>
取根对象的cal2的num1属性
<s:property value="#request.cal2.num1"/>
取非根对象里面的
3.push
<s:push value="result"></s:push>
push就是将你需要的值放到栈顶,便于页面获取
4.action 通常用来请求后台,获取初始化数据的
<s:action name="tagAction" namespace="/sy" var="test2"></s:action>
- url url标签是为了生成地址所用
<s:url namespace="/sy" action="tagAction" var="test3"></s:url>
注意与a标签区分 :
<a href='<s:property value="#test3"/>'></a>
<s:a href="%{#test3}">aaa</s:a>
%{test3}:test3会被强制转换成OGNL表达式计算
6.param 有两种赋值方式(配合url一起使用)
<s:url namespace="/sy" action="tagAction" var="test4">
字符串 :<s:param name="test5">aaaa</s:param>
ognl表达式 :<s:param name="test6" value="num1"></s:param>
</s:url>
7.控制标签(iterator/if/elseif/else)
与之前的没什么不同
eg:
<ul>
<s:iterator var="v" value="#request.names">
<li>
<s:property value="#v"/>
</li>
</s:iterator>
</ul>
<s:if test="#request.score>80">A</s:if>
<s:elseif test="#request.score > 60">B</s:elseif>
<s:else>C</s:else>
8:表单标签
eg:
<s:form namespace="" action="">
<s:textfield label="姓名" name="uname" />
<s:radio list="{'男','女'}" label="性别" name="usex" value="'男'" />
<s:radio list="#{1:'男',2:'女'}" label="性别" name="sex" value="#1" />
<s:select label="部门选择" name="depatname" list="#{1:'技术部',2:'人事部',3:'后勤部'}"></s:select>
注意:单选复选框,往后台传值是布尔类型
<s:checkbox label="是否已婚" name="married"></s:checkbox>
<s:checkboxlist label="好" name="good" list="#{1:'我好',2:'他好',3:'你好' }"></s:checkboxlist>
<s:textarea label="简介" name="remark"></s:textarea>
<s:hidden name="xxx" value=""></s:hidden>
</s:form>