Struts的通用标签和表单标签

一、Struts的通用标签

1.数据标签

property

set    例: <s:set var="test1" value="result"></s:set>

          ${test1 },${requestScope.test1 }----<br>

<!-- 这句话的意思是在ognl上下文的根对象中取result值,赋给test1,value放的不是字符串,而是表达式,set中var没有放到值栈中,是非根对象-->

push     <!--push及时将你需要的值放到栈顶,便于页面获取  -->

action   <!-- 通常用来请求后台,获取初始化数据的 -->

例:<s:action name="fuxiAction" var="test2" namespace="/sy"></s:action>
          <s:property value="#test2.cal2.num1"/>

url   <!-- url是为了上传地址所用,不访问后台,注意与a标签区分 -->

例:  <s:url namespace="/sy" action="fuxiAction" var="test3"></s:url>
          <s:property value="#test3"/>
          <a href='<s:property value="#test3"/>'>xxx</a>
          <s:a href="%{#test3}">ccc</s:a><!-- %{str}:str会被强制转换成OGNL表达式计算  -->

param  <!-- 两种赋值方式:ognl表达式,字符串 -->

例:  <s:url namespace="/sy" action="fuxiAction" var="test4">
            <s:param name="test5">dd</s:param>
            <s:param name="test6" value="num1"></s:param>
          </s:url>
          <s:property value="#test4"/>

显示:/y2_struts2/sy/fuxiAction.action?test5=aa&amp;test6=666

date 例:<s:date name="#request.currentDate" format="yyyy-MM-dd"/>

2.控制标签   iterator/if/elseif/else

 <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 >90">AA
     </s:elseif>
     <s:else>c
      </s:else>

二、表单标签

form/textfield/radio/select/textatea/hidden/submit

   <s:form namespace="" action="">
     <s:textfield label="姓名" name="uname"> </s:textfield>
     <%-- <s:radio list="{'男','女'}" label="性别" name="sex" value="'男'"></s:radio> --%> 
     <s:radio list="#{1:'男',2:'女'}" label="性别" name="sex" value="1"></s:radio>
     <s:select label="部门选择" name="deptName" list="#{1:'人事部',2:'hh不补',3:'sdd' }"></s:select>
     <!--单选复选框  往后台传值是布尔类型的  -->
     <s:checkbox label="是否结婚" name="married" />
     <s:checkboxlist label="爱好" name="hobby" list="#{1:'aa',2:'bb',3:'cc' }"/>
     <s:hidden name="uname" value="aa"/>
     <s:textarea label="备注" name="remark"></s:textarea>
     <s:submit></s:submit>
    </s:form>

总结:
1、value表达式讲解(与c标签作比较)
2、set中var没有放到值栈中
3、action 再发一次请求     是为了调后台模块代码,拿数据
4、url 没有发请求,只为了生成url链接地址
%{str}:str会被强制转换成OGNL表达式计算
以上最最重要的是通过debug标签去拿值

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值