Struts2标签的一些总结

1 session里取值。网上看到一些文章说直接 #session.name 就可以。。但是我试了好像不行。。

注意中间的那个获取类属性的方法。。

<s:if test="#session.get(@com.sunyard.webquery.util.Consts@WebErrImgFind) != null">

这句是在权限控制里用到的

2 下面这个循环里说明了很多问题

          <s:iterator value="#session.get('users')" id="u">
          <s:set name="ss" value="#u.sitelist"></s:set>
          <s:if test="#u.sitelist.length() > 50">
           <s:set name="ss" value="#u.sitelist.substring(0,100)+'.....'"></s:set>
          </s:if>
          <tr>
            <td align="center"><a href="javascript:edit(<s:property value="#u.userid"/>)"><img src=\'#\'" /btnEdit.gif"></a></td>
            <td align="center"><s:property value="#u.userid"/></td>
            <td align="center"><s:property value="#u.username"/></td>
            <td align="center"><s:property value="#u.describe"/></td>
            <td><s:property value="ss"/></td>
          </tr>
        </s:iterator>

3 <s:property>标签的escape属性

<s:property escape="false" value="#session.get('page').printToolBar()"/>

escape默认为true。如果是true的时候表示输出为普通的字符串。如果设置为false,那么输出就会通过html过滤。

比如字符串为 ‘<input type=button>’如果escapse为true,就是原样输出。如果为false就显示成一个按钮。

4 下拉框的写法。什么都不用说,看下面的例子就OK。

          <s:select name="siteno" list="#request.get('siteNoList')" size="10" style="width:400px;" multiple="multiple" listKey="id.code" listValue="contant">
          </s:select>

对比下很丑陋的写法

          <select name="siteno" id="selectsrcid" size="10" style="width:400px;" multiple="multiple">
           <s:iterator value="#request.get('siteNoList')" id='s'>
            <option value='<s:property value="#s.id.code"/>'>
            <s:property value="#s.id.code"/>-<s:property value="#s.contant"/>
            </option>
           </s:iterator>
          </select>

有一点很奇怪,第一种写法会自动帮我加一个/td。让我很费解。。估计是我少写了某个参数

 

5 <s:iterator> 标签的status参数 以及 generator标签

 <s:generator separator="," val="#attr.errmodtb.loperatorno"> 这个标签是分隔字符串用的..其实也没什么好说的,相当于java String类的split(',')
         <s:iterator id="o" status="s">
          <s:if test="#s.first">
           <input name="operatorno"  size="25" maxlength="6"  type="text" id="operatorno" size="25" maxlength="30" class="INPUT_SEND" onblur="isEmptyBody(this)" value="<s:property/>"/>
           <input type="button" class="btn" id="cal1" value="计算金额" onclick="call1()">
           
          </s:if>
          <s:if test="#s.last">
           <s:if test="#s.count == 2">
            <div id="lo">
              <input name="loperatorno"  size="25" maxlength="6"  type="text" id="loperatorno" size="25" maxlength="30" class="INPUT_SEND" onblur="isEmptyBody(this)" value="<s:property/>"/>
            </div>
           </s:if>
           <s:else>
            <div id="lo">
            </div>
           </s:else>
          </s:if>
         </s:iterator>
         </s:generator>

你可能感兴趣的:(struts2,总结,标签,职场,休闲)