引言:今天自己做乙個
b2c的小專案前端頁面展示用到
strut2
標籤,期間遇到一些小的問題,在網上查詢,現總結如下:
1、s:set標籤
格式:<
s:set
name
=""
value
="" scope=」」
/>
用法①:
<
s:set
name
="milolist"
value=""
/>
這個值是乙個list容器,迭代使用s:iterator標籤,notice
:list
、set
容器不加
」#」,
map要加
」#」;
用法②:
<
s:set
name
="milonum"
value
="24"
/>
notice:這個是整形,如果
value
的值是int
或long
型別,那麼就要在輸出的時候加
#,把它當作字串輸出,預設是以字串輸出.
輸出:<
s:property
value
="#milonum"
/>
那麼如果
value
是字串呢?
<
s:set
name
="milostr"
value
="』24』"
/>
notice:這個是字串,
value
中的字串要加上單引號
(『),這樣才說明是字串。
輸出:<
s:property
value
="milostr"
/>
用法③:用scope屬性說明儲存範圍
request:
<
s:set
name
="miloval"
value
="'24'" scope="request"
/>
輸出:<
s:property
value
="#request.miloval"
/>
session:
<
s:set
name="
miloval
" value
="'24'" scope="session"
/>
輸出:<
s:property
value
="#session.
miloval
"/>
page:
<
s:set
name
="miloval"
value
="'24'" scope="page"
/>
輸出:<
s:property
value="#
attr
.minval"
/>
notice
:attr.***
預設是從
2、s:if標籤
對於s:if標籤的用法,我這裡不做具體的說明,因為在網上都能查詢到,而且在前面的struts2 -- s:if
標籤的使用
,中已經說明過了,這裡我只說明一下我在專案實踐中遇到的問題,如下: ①
假設在request中有個checkstatus屬性(這裡表示為審批狀態),有這樣乙個需求,如果checkstatus的值為』00』表示未審批,』01』表示已審批,那麼根據checkstatus的值,在頁面上顯示未審批或已審批。
我的頁面**如下:
<
s:if
test
="#request.checkstatus == 『00』"
/>
未審批
已審批按理說,這樣應該能達到要求,但是結果往往不能如你所願,我用了很多的表示式方法,都沒能成功,最後我在action處理checkstatus,將其轉換為中文,然後直接在頁面上輸出,從中得到啟示,原因是因為我的checkstatus的值是從資料庫中取出來的,而在資料庫中checkstatus的型別為char(6),在資料庫裡面有這樣的規定如果是char型,那麼你定義的長度是多長就是多長,所以我在頁面上用#request.checkstatus的長度也應該是6,而』00』的長度顯然為2,這兩個值顯然不相等,因此此問題的解決方法為:
法①在action處理checkstatus用string的trim()方法;
法②修改資料庫欄位為varchar型別;
但個人認為,對於某個**表示某些值如:』00』表示:否,』01』表示:是,應該建立乙個分類**表,在資料庫中統一管理。
②s:set和s:if的應用例項
value="#request['ordermap']"
status="st"
>
<
s:if
test="checksataus == '00'"
>
<
s:set
name="disabled"
value="''"
/>
<
s:if
test="#st.index == 0"
>
<
s:set
name="checked"
value="'checked'"
/>
s:if
>
<
s:else
>
<
s:set
name="checked"
value="''"
/>
s:else
>
s:if
>
<
s:else
>
<
s:set
name="disabled"
value="'disabled'"
/>
<
s:set
name="checked"
value="''"
/>
s:else
>
<
input
type="radio"
name="orderid"
value='
<
s:property
value="order.orderid"
/>'
<
s:property
value="disabled"
/>
<
s:property
value="checked"
/>
/>
記住該記住的,忘記該忘記的,改變能改變的,接受不能改變的!
Struts2中s set標籤和s if標籤小結
今天自己做乙個小專案前端頁面展示用到 strut2 標籤,期間遇到一些小的問題,在網上查詢,現總結如下 注 本文摘於 1 s set標籤 格式 s set name value scope 說明 把 jsp頁面中的乙個值,以 name 儲存起來。scope 儲存的範圍是在 session reque...
struts2標籤簡介
用過struts1.x的人都知道,標籤庫有html bean logic tiles,而struts2.0裡的標籤卻沒有分類,只用在jsp標頭檔案加上 taglib prefix s uri struts tags 就能使用struts2.0的標籤庫 下面就介紹下每個標籤的用法 有錯請指正 a 超連...
struts2標籤解釋
a 超連結,類似於html裡的 雙下拉框 e 這3個標籤一起使用,表示條件判斷 f 顯示檔案錯誤資訊 檔案上傳 獲取相應form的值 g 和標籤一起使用 h 在裡使用,表示標頭檔案結束 隱藏值 i 載入資源包到值堆疊 包含乙個輸出,servlet或jsp頁面 獲取form的乙個輸入 用於遍歷集合 l...