搜尋
首頁後端開發XML/RSS教程詳細介紹如何使用javascript+xml實作分頁

基於web的技術中,分頁是一個老的不能再老的,但大家津津樂道的問題,隨著xml技術的日漸應用,把xml應用到分頁當中,也是一種可能,當然網上的教學很多,當我都是看得稀里糊塗,索性自己寫一個,跟大家分享、指正。
共有兩個檔案tmh.htm & tt.xml
原始程式碼如下:
tmh.htm
___________________________________________________

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="KeyWords" CONTENT="">
<META NAME="Description" CONTENT="">
<link rel="stylesheet" href="../website.CSS" type="text/css">
</HEAD>
<BODY>

<script language="javascript"> 
//****************变量相关定义**************
//*             author:海仔               *
//*         Email:rautinee@21cn.com      *
//*本程序可自由传播使用,但请务必保留此信息    *
//****************************************
var pagenum=4; //每页显示几条信息 
var page=0 ;
var contpage ;
var BodyText="";
var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
var mode="member";
var toolBar;
xmlDoc.async="false" 
xmlDoc.load("tt.xml")
//***************这个地方是你根据实际取得的字段名称来改了
header="<TABLE border=1><tr><td>姓名</td><td>图标</td><td>IP地址</td><td>email</td><td></td><td>日期</td><td></td><td></td></tr>";

//检索的记录数
maxNum = xmlDoc.getElementsByTagName(mode).length
    //每条记录的列数
    column=xmlDoc.getElementsByTagName(mode).item(0).childNodes
    //每条记录的列数
    colNum=column.length
    //页数
    pagesNumber=Math.ceil(maxNum/pagenum)-1; 
    pagesNumber2=Math.ceil(maxNum/pagenum); 
//上一个页面
function UpPage(page)
{
    thePage="前一页";
    if(page+1>1) thePage="<A HREF=&#39;#&#39; onclick=&#39;Javascript:return UpPageGo()&#39;>前一页</A>";
    return thePage;
}
function NextPage(page)
{
    thePage="后一页";
    if(page<pagesNumber) thePage="<A HREF=&#39;#&#39; onclick=&#39;Javascript:return NextPageGo()&#39;>后一页</A>";
    return thePage;
}

function UpPageGo(){ 

if(page>0) page--; 
    getContent(); 
    BodyText=""; 

} 
//当前的页数
function currentPage()
{
    var cp;
    cp="当前是第 "+(page+1)+" 页";
    return cp;
}
//总共的页数
function allPage()
{
    var ap;
    ap=&#39;总共 &#39;+(pagesNumber+1)+&#39; 页&#39;;
    return ap
}
function NextPageGo()
{ 
if (page<pagesNumber) page++;

    getContent(); 
    BodyText="";
} 

//显示分页状态栏
function pageBar(page)
{
    var pb;
    pb=UpPage(page)+"  "+NextPage(page)+"  "+currentPage()+"  "+allPage()+selectPage();
    return pb;
}
function changePage(tpage)
{    

    page=tpage
    if(page>=0) page--; 
    if (page<pagesNumber) page++;
    getContent(); 
    BodyText="";
}
function selectPage()
{
    var sp;
    sp="<select name=&#39;hehe&#39; onChange=&#39;javascript:changePage(this.options[this.selectedIndex].value)&#39;>";
    //sp="<select name=&#39;hehe&#39; onChange=&#39;alert(this.options[this.selectedIndex].value)&#39;>";
    sp=sp+"<option value=&#39;&#39;></option>";
    for (t=0;t<=pagesNumber;t++)
    {
        sp=sp+"<option value=&#39;"+t+"&#39;>"+(t+1)+"</option>";
    }
    sp=sp+"</select>"
    return sp;
}

function getContent()
{

        if (!page) page=0;
        n=page*pagenum;
        endNum=(page+1)*pagenum;
        if (endNum>maxNum) endNum=maxNum;
        BodyText=header+BodyText;
        for (;n<endNum;n++)
        {
            
            BodyText=BodyText+"<TR>";
                for (m=0;m<=colNum-1;m++)
                {    
                    mName=column.item(m).tagName;
                    BodyText=BodyText+("<TD>"+xmlDoc.getElementsByTagName(mName).item(n).text+"</TD>");
                }
            BodyText=BodyText+"</TR>"
            mm="";
            }
            showhtml.innerHTML=BodyText+"</table>"+pageBar(page); 

BodyText=""
}
</script> 

<div id="showhtml"></div>
<script>
if (maxNum==0)
        {
            document.write("没有检索到合适的人才信息")
        }
    else
        {
            getContent()
        }
</script>

</BODY>
</HTML>

//下面是tt.xml的代码




<?xml version="1.0" encoding="GB2312"?>
<rautinee>

<member id=&#39;1&#39;> 
<name>海仔</name>
<loginName>rautinee</loginName>
<email>rautinee@btamail.net.cn</email></member>

<member id=&#39;2&#39;>
<name>刚强</name>
<loginName>hehe</loginName>
<email>rautinee@chinamanagers.com</email></member>

<member id=&#39;3&#39;>
<name>金华刚</name>
<loginName>nature_it</loginName>
<email>rautinee_sea@hotmail.com</email></member>

<member id=&#39;4&#39;>
<name>的简强</name>
<loginName>tank</loginName>
<email>tank@163.com</email></member>

<member id=&#39;7&#39;>
<name>合资</name>
<loginName>kaka</loginName>
<email>kaka@eyou.com</email></member>

<member id=&#39;6&#39;>
<name>加个人</name>
<loginName>apple</loginName>
<email>apple@163.com</email></member>

<member id=&#39;8&#39;>
<name>null</name>
<loginName>sunny</loginName>
<email>rautinee@eyou.com</email></member>

<member id=&#39;10&#39;>
<name>宝贝</name>
<loginName>index</loginName>
<email>rautinee@21cn.com</email></member>

<member id=&#39;12&#39;>
<name>null</name>
<loginName>login</loginName>
<email>webmaster@chinamanagers.com</email></member>

<member id=&#39;13&#39;>
<name>jiang</name>
<loginName>123</loginName>
<email>japing@chianmanagers.com</email></member>

<member id=&#39;14&#39;>
<name>null</name>
<loginName>world</loginName>
<email>rautinee@21cn.com</email></member>

<member id=&#39;15&#39;>
<name>null</name>
<loginName>swallow</loginName>
<email>swallow@chinamanagers.com</email></member>

<member id=&#39;16&#39;>
<name>魏格</name>
<loginName>hotmail</loginName>
<email>rautinee_sea@hotmail.com</email></member>

<member id=&#39;17&#39;>
<name>null</name>
<loginName>wrong</loginName>
<email>wrong@chinamanagers.com</email></member>

<member id=&#39;18&#39;>
<name>null</name>
<loginName>leah</loginName>
<email>leah@chinamanagers.com</email></member>

<member id=&#39;19&#39;>
<name>null</name>
<loginName>ttth</loginName>
<email>rautinee@21cn.com</email></member>

</rautinee>

目前好像是只支援>IE5.0

以上就是詳細介紹如何使用javascript+xml實作分頁的內容,更多相關內容請關注PHP中文網(www.php.cn)!


陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
掌握良好的XML:數據交換的最佳實踐掌握良好的XML:數據交換的最佳實踐May 14, 2025 am 12:05 AM

良好形式的XMliscrucialfordAtaExchangeBecapeparsingSiturscrectparsingandSundStandingAcrossystem.1)startwithAdeClarationLike.2)確保everyveryopentingtaghasaclopingtaghasaclosingtagosingtagandelementsareproproproproproperlynested.3)

XML:它仍然使用嗎?XML:它仍然使用嗎?May 13, 2025 pm 03:13 PM

Xmlisstillusedduetoitsstructusednature,人類可讀性,以及範圍的addionindererpriseEnvormentments.1)itfacilitatesdataexchangeInsectInsectorlikeFinance(swift)andHealthCare(hl7)和hl7)

RSS文檔的解剖結構:結構和元素RSS文檔的解剖結構:結構和元素May 10, 2025 am 12:23 AM

RSS文檔的結構包括三個主要元素:1.:根元素,定義RSS版本;2.:包含頻道信息,如標題、鏈接、描述;3.:代表具體的內容條目,包含標題、鏈接、描述等。

了解RSS文檔:綜合指南了解RSS文檔:綜合指南May 09, 2025 am 12:15 AM

RSS文檔是一種簡便的訂閱機制,通過XML文件發佈內容更新。 1.RSS文檔結構由和元素組成,包含多個。 2.使用RSS閱讀器訂閱頻道,並通過解析XML提取信息。 3.高級用法包括使用feedparser庫進行過濾和排序。 4.常見錯誤包括XML解析和編碼問題,調試時需驗證XML格式和編碼。 5.性能優化建議包括緩存RSS文檔和異步解析。

RSS,XML和現代網絡:內容聯合深度潛水RSS,XML和現代網絡:內容聯合深度潛水May 08, 2025 am 12:14 AM

RSS和XML在現代Web中依然重要。 1.RSS用於發布和分發內容,用戶可通過RSS閱讀器訂閱並獲取更新。 2.XML作為標記語言,支持數據存儲和交換,RSS文件基於XML。

基礎知識超越:XML啟用的高級RSS功能基礎知識超越:XML啟用的高級RSS功能May 07, 2025 am 12:12 AM

RSS可以實現多媒體內容嵌入、條件訂閱、以及性能和安全性優化。 1)通過標籤嵌入多媒體內容,如音頻和視頻。 2)使用XML命名空間實現條件訂閱,允許訂閱者根據特定條件篩選內容。 3)通過CDATA節和XMLSchema優化RSSFeed的性能和安全性,確保穩定性和符合標準。

解碼RSS:Web開發人員的XML底漆解碼RSS:Web開發人員的XML底漆May 06, 2025 am 12:05 AM

RSS是一種基於XML的格式,用於發布常更新的數據。作為Web開發者,理解RSS能提升內容聚合和自動化更新能力。通過學習RSS結構、解析和生成方法,你將能自信地處理RSSfeeds,優化Web開發技能。

JSON與XML:為什麼RSS選擇XMLJSON與XML:為什麼RSS選擇XMLMay 05, 2025 am 12:01 AM

RSS選擇XML而不是JSON是因為:1)XML的結構化和驗證能力優於JSON,適合RSS複雜數據結構的需求;2)XML當時有廣泛的工具支持;3)RSS早期版本基於XML,已成標準。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具