struts2標簽

          ?

          一、
          寫jsp頁面的時候,在struts2中,用的是s標記,先引入標記:
          <%@ taglib prefix="s" uri="/struts-tags"%>
          二、
          struts2的標簽和1是完全不同的。
          struts2的標簽分為兩大類:非UI標志和UI標志 struts1 將標志庫按功能分成HTML、Tiles、Logic和Bean等幾部分
          下面就介紹strut2的具體標簽:
          1、UI
          UI標志又可以分為表單UI和非表單UI兩部分。表單UI部分基本與Struts 1.x相同,都是對HTML表單元素的包裝。不過,Struts 2.0加了幾個我們經常在項目中用到的控件如:datepicker、doubleselect、timepicker、optiontransferselect等。因為這些標志很多都經常用到,而且參數也很多,要在一篇文章詳細說明并非易事。
          下面主要是ui標簽的一些用法
          form:
          <s:form action="exampleSubmit" method="post" enctype="multipart/form-data">
          <s:submit />
          ??? <s:reset />

          </s:form>可以上傳文件的form。
          textfield:
          <s:textfield
          ??????????? label="姓名:"
          ??????????? name="name"
          ??????????? tooltip="Enter your Name here" />
          datepicker:
          <s:datepicker
          ??????????? tooltip="Select Your Birthday"
          ??????????? label="生日"
          ??????????? name="birthday" />
          textarea:
          <s:textarea
          ??????????? tooltip="Enter your remart"
          ??????????? label="備注"
          ??????????? name="remart"
          ??????????? cols="20"
          ??????????? rows="3"/>
          select:
          <s:select
          ??????????? tooltip="Choose user_type"
          ??????????? label=""
          ??????????? list="#{'free':'免費','vip':'收費'}" value="#{'free':'免費'}"??
          ?????????? name="bean.user_type"
          ??????????? emptyOption="true"
          ??????????? headerKey="None"
          ??????????? headerValue="None"/>
          <s:select
          ??????????? tooltip="Choose user_type"
          ??????????? label=""
          ??????????? list="#{'free':'免費','vip':'收費'}" value="#{'free':'免費'}"??
          ?????????? name="bean.user_type"
          ??????????? emptyOption="true"
          ??????????? headerKey="None"
          ??????????? headerValue="None"/>
          <s:select
          list="venderList"
          listKey="id"
          listValue="name"
          value="%{profile.companyName}"
          name="companyName" cssClass="sel_style_w_180"/>??
          挺好用的
          checkboxlist:
          <s:checkboxlist
          ??????????? tooltip="Choose your Friends"
          ??????????? label="朋友"
          ??????????? list="{'Patrick', 'Jason', 'Jay', 'Toby', 'Rene'}"
          ??????????? name="friends"/>
          checkbox:
          ?? <s:checkbox
          ??????????? tooltip="Confirmed that your are Over 18"
          ??????????? label="年齡"
          ??????????? name="legalAge"
          ??????????? value="18"/>
          file:
          ?? <s:file
          ??????????? tooltip="Upload Your Picture"
          ??????????? label="Picture"
          ??????????? name="picture" />
          a:
          <s:a href="getP.jsp">超鏈接提交</s:a>
          date :
          <s:date name="ad_end_time" format="yyyy-MM-dd"/>


          2、非UI
          if、elseif和else 描述:
          執行基本的條件流轉。
          參數:
          名稱必需默認類型描述備注test是Boolean決定標志里內容是否顯示的表達式else標志沒有這個參數id否Object/String用來標識元素的id。在UI和表單中為HTML的id屬性 例子:
          <%@ page c %>
          <%@ taglib prefix="s" uri="/struts-tags" %>
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <html>
          ??? <head>
          ??????? <title>Condition Flow</title>
          ??? </head>
          ??? <body>
          ??????? <h3>Condition Flow</h3>????????????
          ??????? <!--
          ??????????? 這里有點小技巧:
          ??????????? 本來可以用#parameters.name[0]來獲得,請求中name的值。但是,在我實現include例子時,
          ??????????? 無論我用param標志給name賦任何值,#parameters里面不會含有任何值,所以#parameters.name也為空值。
          ????????????
          ??????????? 其原因為:
          ??????????? 當使用include標志時,被包含的頁面(included)里#parameters拿到的是包含頁面里的請求參數。
          ????????????
          ??????????? 因此,這里必須手工調用request.getParameter("name")。
          ??????? -->
          ??? <s:iterator value="linkList" status="bean">
          ?? <tr>
          ??? <td class="data_tab_tdcl">
          ???? <s:property value="#bean.Index+1" />??? </td>
          ??? <td class="data_tab_tdcl"><s:property value="link_title" /></td>
          ??? <td class="data_tab_tdcl"><s:property value="link_url" /></td>
          ??? <td class="data_tab_tdcl">
          ??? <s:if test="link_type == 1">
          ?????????????????? 文字
          ??????????????? </s:if>
          ??????????????? <s:elseif test="link_type == 2">
          ?????????????????? 圖片
          ??????????????? </s:elseif>
          ???????????????? <s:else>
          ???????????????? -----
          ?????????????? </s:else>???
          ??? </td>

          ???
          ??? </body>
          </html>
          例1 condition.jsp
          iterator 描述:
          用于遍歷集合(java.util.Collection)或枚舉值(java.util.Iterator)。
          參數:
          名稱必需默認類型描述status否String如果設置此參數,一個IteratorStatus的實例將會壓入每個遍歷的堆棧value否Object/String要遍歷的可枚舉的(iteratable)數據源,或者將放入新列表(List)的對象id否Object/String用來標識元素的id。在UI和表單中為HTML的id屬性 例子:
          <%@ page c %>
          <%@ page import="java.util.List" %>
          <%@ page import="java.util.ArrayList" %>
          <%@ taglib prefix="s" uri="/struts-tags" %>

          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <%
          ??? List list = new ArrayList();
          ??? list.add("Max");
          ??? list.add("Scott");
          ??? list.add("Jeffry");
          ??? list.add("Joe");
          ??? list.add("Kelvin");
          ??? request.setAttribute("names", list);
          %>
          <html>
          ??? <head>
          ??????? <title>Iterator</title>
          ??? </head>
          ??? <body>
          ??????? <h3>Names: </h3>
          ??????? <!--
          ??????????? 1、此處的空property元素用于獲得當前iterator的值
          ??????????? 2、status被設成stuts,在iterator的里面就可以通過#stuts取得IteratorStatus的對象。IteratorStatus類包含當前序號信息,如是否第一個或最后一個,是否為奇數序號。這些信息在我們做格式化的時候,顯得非常有用。
          ??????? -->
          ??????? <ol>
          ??????????? <s:iterator value="#request.names" status="stuts">????????????????
          ??????????????? <s:if test="#stuts.odd == true">
          ??????????????????? <li>White <s:property /></li>
          ??????????????? </s:if>
          ??????????????? <s:else>
          ??????????????????? <li style="background-color:gray"><s:property /></li>
          ??????????????? </s:else>
          ??????????? </s:iterator>
          ??????? </ol>
          ??? </body>
          </html>

          posted on 2008-10-13 15:46 金家寶 閱讀(529) 評論(1)  編輯  收藏 所屬分類: Java

          評論

          # re: struts2標簽 2008-10-13 18:07 過路人

          只想問一句你是如何在action中能夠將checkbox等值給取到
            回復  更多評論   

          主站蜘蛛池模板: 潜山县| 黄梅县| 东港市| 体育| 吕梁市| 砚山县| 重庆市| 井冈山市| 沙坪坝区| 阳江市| 尼勒克县| 樟树市| 南川市| 江口县| 承德县| 潞城市| 资溪县| 普陀区| 涡阳县| 古田县| 承德县| 峨眉山市| 伽师县| 曲沃县| 南江县| 平度市| 阿合奇县| 潮州市| 晋州市| 湘潭市| 乌拉特后旗| 赤城县| 麻江县| 武安市| 杨浦区| 西乡县| 沧州市| 榆树市| 威海市| 景泰县| 齐齐哈尔市|