<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    acerbic coffee
    走自己的路,讓別人跑步
    posts - 26,comments - 14,trackbacks - 0
    例一:

    關于XSLTXML的介紹就不再多說,這里關注的是如何使用XSLT分頁顯示XML中的數據,并可以針對每一列對全部數據進行重新排序.

    假設有下面的XML數據,需要使用XSLT分頁顯示XML數據,并可針對每一列對所有數據進行重新排序,應該如何處理呢?

    XML數據如下:

     1 <?xml version="1.0" encoding="gb2312"?>
     2 <AllUsers xmlns:dt="urn:schemas-microsoft-com:datatypes">
     3     <User>
     4         <UserID>01</UserID>
     5         <UserName>OhYeah</UserName>
     6         <UserEmail>Oh@126.com</UserEmail>
     7     </User>
     8     <User>
     9         <UserID>02</UserID>
    10         <UserName>楊過</UserName>
    11         <UserEmail>yg@21.com</UserEmail>
    12     </User>
    13     <User>
    14         <UserID>03</UserID>
    15         <UserName>真寶玉</UserName>
    16         <UserEmail>xyz@msn.com</UserEmail>
    17     </User>
    18     <User>
    19         <UserID>04</UserID>
    20         <UserName>天堂</UserName>
    21         <UserEmail>tt@163.net</UserEmail>
    22     </User>
    23     <User>
    24         <UserID>05</UserID>
    25         <UserName>草原</UserName>
    26         <UserEmail>yt@sina.com</UserEmail>
    27     </User>
    28 </AllUsers>
    29 

    恐怕最容易想到的就是XSLT中的for-each元素.
     1<xsl:param name="PageNo">1</xsl:param>
     2<xsl:param name="FuncName">goPage</xsl:param>
     3<xsl:param name="Count">4</xsl:param>
     4<table  width="800" border="0" cellspacing="2" cellpadding="2">
     5<tr>
     6        <th><xsl:attribute name="onClick">sortBy('UserID')</xsl:attribute>RecordNo</th>
     7        <th><xsl:attribute name="onClick">sortBy(' UserName')</xsl:attribute>FieldA</th>
     8        <th><xsl:attribute name="onClick">sortBy(' UserEmail')</xsl:attribute>Name</th>
     9</tr>
    10<xsl:for-each select="RecordSet[(position() &lt;= $PageNo*$Count) and (position() &gt; (number($PageNo)-1)*$Count)]">
    11<xsl:sort select="UserID"/>
    12<tr>
    13 <td><xsl:value-of select="'UserID'"/></td>
    14    <td><xsl:value-of select=" UserName"/></td>
    15<td><xsl:value-of select=" UserEmail"/></td>
    16</tr> 
    17</xsl:for-each>
    18</table>
    19

    頁碼數發生變化時,通過JavaScript指定for-each中的$PageNo變量.

    重新排序時,通過JavaScript指定sort元素的select屬性.

    但這里就有一個問題:這里點擊列名重新排序時,只是對當前頁的數據進行了重新排序(原因是先用for-each取出的當前頁的數據,然后才進行排序的),咱們本來的目標應該是對所有數據重新排序的.

           解決這個問題的過程中,孟子E章曾經給我一篇他網站上的文章,解決了這個問題.但網頁使用的是VBScript,并且不能正確運行.為此,浪費了不少時間(-_-!!!,太懶了,就希望借用成功的代碼,遇到不正確的代碼就不愿自己去看.).不過最終總算搞明白了.解決方案就是先用一個XSLT對所有數據重新排序后生成XML,再對重新排序后的XML進行分頁操作.

           用于對XML排序并生成XMLXSLT如下:


     1<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
     2<xsl:template match="Table">
     3<?xml version="1.0" encoding="iso-8859-1"?>
     4< AllUsers >
     5    <xsl:for-each select="RecordSet">
     6    <xsl:sort order="ascending" data-type="text" select="Name"/>
     7    <User>
     8    <UserID><xsl:value-of select="RecordNo" /></UserID>
     9    <UserName><xsl:value-of select="FieldA" /></UserName>
    10    <UserEmail><xsl:value-of select="Name" /></UserEmail>
    11    </User>
    12    </xsl:for-each>
    13</ AllUsers >
    14</xsl:template>
    15</xsl:stylesheet>



    例子二:
    posted on 2008-06-04 16:54 acerbic coffee 閱讀(704) 評論(0)  編輯  收藏 所屬分類: 個人筆記
    主站蜘蛛池模板: 日韩插啊免费视频在线观看| 在线亚洲午夜片AV大片| AV在线播放日韩亚洲欧| 亚洲成AⅤ人影院在线观看| 国产自产拍精品视频免费看| 最近最好的中文字幕2019免费 | 日韩电影免费在线观看网址| 亚洲人av高清无码| MM1313亚洲国产精品| jizzjizz亚洲日本少妇| 小说区亚洲自拍另类| 搜日本一区二区三区免费高清视频 | 91精品手机国产免费| 97在线视频免费播放| 亚洲免费在线视频播放| 91麻豆最新在线人成免费观看| 国产精品永久免费10000| 色se01短视频永久免费| 色播在线永久免费视频| 无码欧精品亚洲日韩一区夜夜嗨 | 亚洲精品国产成人| 2020亚洲男人天堂精品| 亚洲AV无码国产一区二区三区| 精品亚洲国产成人av| 一区在线免费观看| 国产午夜精品久久久久免费视 | 巨胸喷奶水www永久免费| 男女作爱在线播放免费网站| 84pao国产成视频免费播放| 国产卡一卡二卡三免费入口| 黄网址在线永久免费观看| yy6080亚洲一级理论| 亚洲国产AV无码专区亚洲AV| 亚洲色av性色在线观无码| 亚洲日韩国产欧美一区二区三区| 国产精品成人亚洲| a级毛片在线视频免费观看| h视频在线观看免费网站| 国产成人免费福利网站| 亚洲熟妇丰满多毛XXXX| 1区1区3区4区产品亚洲|