struts自带标签
1.1 通用标签
1.1.1 数据标签
<h3 style="color: red;">数据标签</h3>
<h3>property</h3>
<h3>set</h3>
<s:set var="test1" value="50"></s:set>
<s:property value="test1"/>
<h3>push</h3>
<!-- 相当于弹栈 结束标签之后会压下去 -->
<%-- <s:push value="name">
<s:property/>
</s:push> --%>
<h3>action</h3>
<!-- 是为了向后台发请求拿数据,加载初始化数据所用-->
<s:action name="caseAction" namespace="/sy" var="test2"></s:action>
<s:property value="test2"/>
<s:property value="#test2.name"/>
<h3>url</h3>
<!-- 只为了生成链接地址 -->
<s:url namespace="/sy" action="caseAction" var="test3"></s:url>
<h3>param</h3>
<!-- 属于子标签,通常是配合action,url去使用的 -->
<s:url namespace="/sy" action="caseAction" var="test6">
<s:param name="test4">name</s:param>
<s:param name="test5" value="name"></s:param>
</s:url>
<s:property value="test6"/>
<h3>date</h3>
<%//测试数据
request.setAttribute("currenTime", new Date());
request.setAttribute("names", new String[]{"ss","sa","sw"});
request.setAttribute("score", new Integer(70));
%>
<s:date name="#request.currenTime" format="yyyy-mm-dd"/>
<h3>debug</h3>
<s:debug/>
运行结果:
1.1.2 控制标签
iterator/if/elseif/else
<s:iterator value="#request.names" var="v">
<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>
运行结果:
1.2.1 表单标签
<s:form namespace="/sy" name="caseAction">
<s:textfield label="姓名" name="uname"/>
<s:radio label="性别" name="sex" list="{'男','女'}" value="'男'"></s:radio>
<s:select label="luck" name="hod" list="#{1:'aa',2:'dad',3:'srf'}"></s:select>
<s:checkbox label="是否有女朋友" name="aaa"></s:checkbox>
<s:checkboxlist label="爱好" name="555" list="#{1:'aa',2:'dad',3:'srf'}"></s:checkboxlist>
<s:textarea label="简介" name="mark"/>
<s:hidden name="ss" value="ss"/>
</s:form>
运行结果:
ps: 有自带的样式调节
%{str}:str会被强制转换成OGNL表达式计算
<s:a href="%{#url1}">bbb</s:a>