if,else ,elseif
標簽使用介紹
技術要點 ?
本節代碼具體介紹
?????? if 、 else 、 elseif 控制標簽的使用方式介紹。
if 、 else 、 elseif 標簽使用。
if 、 else 、 elseif 標簽功能演示。
演示代碼
標簽使用 JSP 文件:
- <!-------------------------?文件名:?ifelseifTag.jsp-------------------> ??
- <body> ??
- ???????????????????<h3?align= "left" > ??
- ????????????????????????????ifelseif?標簽使用范例 ??
- ???????????????????</h3> ??
- ???????????????????<s:set?name= "frank" ?value= "{'?歐龍無苯油漆?(?六度?)','?進戶門套油漆?','?踢腳線?','?奧普浴霸?'}" ?/> ??
- ???????????????????<s: if ?test= "%{#frank[1]=='?踢腳線?'}" > ??
- ????????????????????????????<s:property?value= "%{#frank[1]}" ?/> ??
- ???????????????????</s: if > ??
- ???????????????????<s:elseif?test= "%{#frank[1]=='?進戶門套油漆?'}" > ??
- ????????????????????????????<s:property?value= "%{#frank[1]}" ?/> ??
- ???????????????????</s:elseif> ??
- ???????????????????<s: else > ??
- ?????????不是 ??
- ?????????</s: else > ??
- </body>???
<!------------------------- 文件名: ifelseifTag.jsp-------------------> <body> <h3 align="left"> ifelseif 標簽使用范例 </h3> <s:set name="frank" value="{' 歐龍無苯油漆 ( 六度 )',' 進戶門套油漆 ',' 踢腳線 ',' 奧普浴霸 '}" /> <s:if test="%{#frank[1]==' 踢腳線 '}"> <s:property value="%{#frank[1]}" /> </s:if> <s:elseif test="%{#frank[1]==' 進戶門套油漆 '}"> <s:property value="%{#frank[1]}" /> </s:elseif> <s:else> 不是 </s:else> </body>
功能演示如圖 5.4 。
圖 5.4 ? if 、 else 、 elseif 標簽范例圖
代碼解釋
( 1 ) if 標簽的功能判斷條件是否符合 if 中定義的條件 。和 Java 中 if 的功能相同。
( 2 ) else 標簽的功能判斷條件是否符合 else 中定義的條件 。和 Java 中 else 的功能相同。
( 3 ) elseif 標簽的功能判斷條件是否符合 elseif 中定義的條件 。和 Java 中 else if 的功能相同。
( 4 )上述三個標簽中 test 都是判斷的條件定義。返回的是一個 boolean 值,如果判斷條件為真即返回 true 值,則標簽中定義的內容才會在頁面上顯示。如代碼所示,網頁中顯示的是 elseif 標簽中的內容。因為只有該標簽的 test 返回的是 true ,而且一旦返回 true 值,后面的標簽內容也不執行。和 Java 中 if 、 else 的功能是完全相同的。
?
iterator
標簽使用介紹
技術要點
本節代碼具體介紹 iterator 控制標簽的使用方式介紹。
iterator 標簽使用。
iterator 標簽功能演示。
演示代碼
標簽使用 JSP 文件:
?
- <!----------------------------------?文件名:?iteratorTag.jsp-----------------------> ??
- <body> ??
- ???????????????????<h3?align= "left" > ??
- ????????????????????????????iterator?標簽使用范例 ??
- ???????????????????</h3> ??
- ???????????????????<s:set?name= "frank" ?value= "{'?歐龍無苯油漆?(?六度?)','?進戶門套油漆?','?踢腳線?','?奧普浴霸?'}" ?/> ??
- ???????????????????<s:iterator?value= "#frank" > ??
- ????????????????????????????<p> ??
- ?????????????????????????????????????<s:property?/> ??
- ????????????????????????????</p> ??
- ???????????????????</s:iterator> ??
- </body>???
<!---------------------------------- 文件名: iteratorTag.jsp-----------------------> <body> <h3 align="left"> iterator 標簽使用范例 </h3> <s:set name="frank" value="{' 歐龍無苯油漆 ( 六度 )',' 進戶門套油漆 ',' 踢腳線 ',' 奧普浴霸 '}" /> <s:iterator value="#frank"> <p> <s:property /> </p> </s:iterator> </body>
?
功能演示如圖 5.5 。
圖 5.5 ? iterator 標簽范例圖
代碼解釋
( 1 ) iterator 標簽的功能是對某個集合中的所有屬性進行迭代遍歷 。和 Struts 中的 iterator 標簽功能完全相同。其中 id 也和之前記述標簽相同。而 value 則可以指定需要被迭代遍歷的集合,如果不顯式指定,則表示是使用在值棧的棧頂的數據集合。還有一個 status 屬性,它其實表示的是 Struts2 中的 IteratorStatus 對象的具體某實例。其中有一些 API 都是和集合的順序索引有關的。有興趣的讀者可以去參看 Struts2 中 IteratorStatus 的源代碼。
( 2 )如代碼所示顯示了字符串集合 frank (筆者的英文名 )的所有字符串。
merge
標簽使用介紹
技術要點
本節代碼具體介紹 merge 控制標簽的使用方式介紹。
merge 標簽使用。
merge 標簽功能演示。
演示代碼
標簽使用 JSP 文件:
?
- <!---------------------------?文件名:?mergeTag.jsp-------------------------> ??
- <body> ??
- ???????????????????<h3?align= "left" > ??
- ????????????????????????????merge?標簽使用范例 ??
- ???????????????????</h3> ??
- ???????????????????<s:set?name= "frank" ?value= "#{'material':'?歐龍無苯油漆?(?六度?)',?'mount':'500'}" ?/> ??
- ???????????????????<s:set?name= "jakcy" ?value= "#{'material':'?進戶門套油漆?',?'mount':'800'}" ?/> ??
- ???????????????????<s:merge?id= "SP" > ??
- ????????????????????????????<s:param?value= "frank" ?/> ??
- ????????????????????????????<s:param?value= "jakcy" ?/> ??
- ???????????????????</s:merge> ??
- ??
- ???????????????????<p> ??
- ????????????????????????????供銷商?frank?和?jakcy?手里還有建材 ??
- ????????????????????????????<s:iterator?value= "#SP" > ??
- ?????????????????????????????????????<tr> ??
- ???????????????????????????????????????????????<td> ??
- ????????????????????????????????????????????????????????<p> ??
- ?????????????????????????????????????????????????????????????????<s:property?/> ??
- ????????????????????????????????????????????????????????</p> ??
- ???????????????????????????????????????????????</td> ??
- ?????????????????????????????????????</tr> ??
- ????????????????????????????</s:iterator> ??
- </body>???
<!--------------------------- 文件名: mergeTag.jsp-------------------------> <body> <h3 align="left"> merge 標簽使用范例 </h3> <s:set name="frank" value="#{'material':' 歐龍無苯油漆 ( 六度 )', 'mount':'500'}" /> <s:set name="jakcy" value="#{'material':' 進戶門套油漆 ', 'mount':'800'}" /> <s:merge id="SP"> <s:param value="frank" /> <s:param value="jakcy" /> </s:merge> <p> 供銷商 frank 和 jakcy 手里還有建材 <s:iterator value="#SP"> <tr> <td> <p> <s:property /> </p> </td> </tr> </s:iterator> </body>
?
功能演示如圖 5.6 。
?
圖 5.6 ? merge 標簽范例圖
代碼解釋
( 1 ) merge 標簽的功能和 append 標簽功能相同 。唯一的不同點在于 merge 標簽合并的集合中各個元素的排列順序是不同的。如代碼所示,可以把圖 5.6 和圖 5.2 相比較就可知。其屬性和 append 標簽完全相同。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
