日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

使用XML管理模版資源

發布時間:2023/12/15 asp.net 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用XML管理模版資源 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?來源:http://caterpillar.onlyfun.net/Gossip/Struts/XmlConfig.htm

?

在Tiles中,您可以使用XML或是JSP來管理版面配置的相關資源,這邊先介紹使用XML定義檔的方式,如之前主題所定義的,定義檔是tiles-defs.xml,在當中如下撰寫:
  • tiles-defs.xml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
<tiles-definitions>

<definition name=".myLayout" path="/tiles/myLayout.jsp">
<put name="title" value="Sample Page Title" />
<put name="header" value="/tiles/header.jsp" />
<put name="menu" value="/tiles/menu.jsp" />
<put name="footer" value="/tiles/footer.jsp" />
<put name="body" value="/tiles/body.jsp" />
</definition>

</tiles-definitions>

在<definition>標籤中,我們指定了版面配置的JSP頁面,也就是path屬性所指定的 myLayout.jsp,name屬性表明這個版面配置的名稱,而在接下來的<put>標籤中,我們指定了內容頁面的名稱與JSP頁面實際 的位置。

Tiles的定義檔可以支援國際化,您可以複製以上的內容,撰寫在tiles-defs_zh.xml中,並將encoding改為Big5,就可以在定義檔中使用中文,例如:
  • tiles-defs_zh.xml
<?xml version="1.0" encoding="Big5" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">
<tiles-definitions>
<definition name=".myLayout" path="/tiles/myLayout.jsp">
<put name="title" value="Tiles範例" />
<put name="header" value="/tiles/header.jsp" />
<put name="menu" value="/tiles/menu.jsp" />
<put name="footer" value="/tiles/footer.jsp" />
<put name="body" value="/tiles/body.jsp" />
</definition>
</tiles-definitions>
其中myLayout.jsp的內容如下:
  • myLayout.jsp
<%@taglib prefix="tiles" uri="/tags/struts-tiles"%>
<html>
<head>
<title><tiles:getAsString name="title"/></title>
</head>
<body>

<table border="0" width="100%" cellspacing="5">
<tr>
<td colspan="2">
<tiles:insert attribute="header"/>
</td>
<tr>
<tr>
<td width="140" valign="top">
<tiles:insert attribute="menu"/>
</td>
<td valign="top" align="left">
<tiles:insert attribute="body"/>
</td>
</tr>
<tr>
<td colspan="2">
<tiles:insert attribute="footer"/>
</td>
</tr>
</table>

</body>
</html>
這個版面配置網頁中主要使用表格來切割版面,Tiles標籤可以從attribute屬性得知對應於XML定義檔的真正JSP頁面,例如header將被 實際取代為header.jsp的內容,您可以自行完成其它的JSP頁面內容。

接下可以開始使用定義好的版面配置,例如在welcome.jsp中如下撰寫:
  • welcome.jsp
<%@page contentType="text/html; charset=big5"%>
<%@taglib prefix="tiles" uri="/tags/struts-tiles"%>
<tiles:insert definition=".myLayout" flush="true"/>

在<tiles:insert>標籤中指定我們將使用.myLayout的版面配置定義,如果您連上welcome.jsp,則實際上您 會看到以下的內容:
?<html>
?<head><title>Tiles範例</title></head>
?<body>

?<table border="0" width="100%" cellspacing="5">
?<tr>
??? <td colspan="2">
?<center><h1>Tiles測試範例<h1>
??? </td>
?<tr>
?<tr>
??? <td width="140" valign="top">
?選單一<br>
?選單二<br>
?選單三<br>
??? </td>
??? <td valign="top" align="left">
?Tiles提供一個類似於視窗程式版面管理的機制,透過定義檔,您可
以定義版面配置,以及當中所要置入的內容網頁,內容與版面配置的
標籤可以分離,您可以隨時抽換每一個內容網頁,也可以重用每一個
版面配置。
??? </td>
?</tr>
?<tr>
??? <td colspan="2">
?<center>版權所有(c)http://www.caterpillar.onlyfun.net/
??? </td>
?</tr>
?</table>
?
?</body>
?</html>
?
如果您將來要改變版面配置的方式,您可以直接修改tiles-defs.xml中path所指向的Layout頁面,就如同您在視窗程式中改變版面管理員 一樣,如果您要修改指向的內容網頁,也只要更改tiles-defs.xml中相對應的設定,所有的更改集中於Tiles設定檔中加以管理,達到將版面配 置與內容分離的目的。

您可以擴充某個定義,重新定義當中所管理的頁面資源,一個例子如下:
  • tiles-defs_zh.xml
<?xml version="1.0" encoding="big5" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
"http://jakarta.apache.org/struts/dtds/tiles-config_1_1.dtd">

<tiles-definitions>
<definition name=".myLayout" path="/tiles/myLayout.jsp">
<put name="title" value="Tiles範例" />
<put name="header" value="/tiles/header.jsp" />
<put name="menu" value="/tiles/menu.jsp" />
<put name="footer" value="/tiles/footer.jsp" />
<put name="body" value="/tiles/body.jsp" />
</definition>
<definition name=".myLayout2" extends=".myLayout">
<put name="title" value="Tiles範例二" />
<put name="header" value="/tiles/header2.jsp" />
</definition>
</tiles-definitions>

在上面的定義中,.myLayout2擴充自.myLayout,並重新定義了title與header兩個屬性,其它未重新定義的屬性將直接繼承自. myLayout。
? <script type="text/javascript"><!-- google_ad_client = "pub-9750319131714390"; google_ad_width = 160; google_ad_height = 600; google_ad_format = "160x600_as"; google_ad_type = "text_image"; google_ad_channel = ""; //--> </script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"> </script> <script src="http://pagead2.googlesyndication.com/pagead/expansion_embed.js"></script> <script src="http://googleads.g.doubleclick.net/pagead/test_domain.js"></script> <script>window.google_render_ad();</script>

<script type="text/javascript"><!-- google_ad_client = "pub-9750319131714390"; google_ad_width = 160; google_ad_height = 600; google_ad_format = "160x600_as"; google_ad_type = "text_image"; google_ad_channel = ""; //-->&#160;</script> ? <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script> <script>window.google_render_ad();</script>

<script src="http://ad2.bloggerads.net/showads.aspx?blogid=20070509000002&charset=big5"></script> <script src="http://pic.bloggerads.net/src/swfobject.js"></script> <script src="http://pic.bloggerads.net/src/bafunc.js"></script>
守護唐寶寶天使
一個月100元,一年$1,200,你可以幫助唐寶寶接受早期療育,讓他們快樂、健康、有自信的成長。
更多訊息..
Impr <script src="http://ad2.bloggerads.net/getads3.aspx?blogid=20070509000002&fid=1&charset=big5&sid=162353328.h2pPLX30&rdm=4.782153695564872"></script>

總結

以上是生活随笔為你收集整理的使用XML管理模版資源的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。