struts标签中 s:if

项目中我们经常用到struts标签,关于s:if 标签遇到并解决的几种写法:

一、正常写法:

①、当tUser 是对象是

<s:if test ="tUser!=null"></s:if>

②、迭代tUser,sex是String类型:

 <s:if test="tUser!=null">

      <s:if test="tUser.sex == '1' ">

           男

      </s:if>

      <s:elseif test="tUser.sex== '2' " >

           女

      </s:elseif>

      <s:else>

           保密

      </s:else>

 </s:if>

③、OGNL表达式 :%{}

    在struts2的标签内部,使用%{}这样的形式

       <s:if test="student=='all'">
              <table>
                  <s:if test="studentList.size>0">
                      <s:iterator value="studentList" id="student"> 
                           <s:if test="%{#student.sex == 1}">
                                 <tr>

                                      <td>郭美美</td>
                                  </tr>

                           </s:if>

                            <s:if test="%{#student.sex == 2}">
                                 <tr>

                                      <td>李刚</td>
                                  </tr>

                           </s:if>

                       </s:iterator>

                   </s:if>

              </table>

         </s:if>

④、EL表达式:${}

在标签外部可以使用${}EL语言的方式。在struts2的标签内部不允许使用${}这样的形式。

 

③、④、总结:很多时候,我们使用struts2的一些标签,属性是需要接受集合的,如果集合是保存在request,session,或者是值栈(非根对象的栈顶),可以使用#变量名的方式,如果获取的值是在Action中通过特定的方法来获取,就需要使用如 value="list"这样的方式,只是去掉了前面的#。

 

 

 

     

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值