<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "
http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="
http://www.w3.org/1999/xhtml" >
<head>
<title>龙的传人--Xml_javascript分页</title>
</head>
<body onload="getxmlDoc()">
<script language="javascript" type="text/javascript">
var xmlDoc;
var nodeIndex;
var pageIndex;
var pageSize=13;
var lastPage; //最后一页
var overSize //最后一页的记录数
function getxmlDoc()
{
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
var currNode;
xmlDoc.async=false;
xmlDoc.load("myTest.xml");
if(xmlDoc.parseError.errorCode!=0)
{
var myErr=xmlDoc.parseError;
alert("出错!"+myErr.reason);
}
getRecordCount();
onFirst();
}
function getRecordCount()
{
var personNode= xmlDoc.selectNodes("/Root")[0];
var recordCount=personNode.childNodes.length;
var pageCount=Math.ceil(recordCount/pageSize);
document.getElementById("txtPageCount").value=pageCount;
document.getElementById("txtRecordCount").value=recordCount;
overSize=recordCount%pageSize;
if(overSize>0)
{
lastPage=recordCount-overSize;
}
else
{
lastPage=recordCount-pageSize;
}
}
function getPageRecord(pageIndex,pageSize)
{
clearRow("myTable");
var personNode= xmlDoc.selectNodes("/Root")[0];
var currNode=personNode.childNodes[pageIndex];
for(var i=pageIndex;i<pageIndex+pageSize;i++)
{
var arr=new Array();
var nNode= xmlDoc.selectSingleNode("Root/Person["+i+"]") ;
arr[0]=nNode.getAttribute("Id"); //序号
arr[1]=nNode.childNodes[0].text; //工号
arr[2]=nNode.childNodes[1].text; //姓名
arr[3]=nNode.childNodes[2].text; //性别
arr[4]=nNode.childNodes[3].text; //部门
arr[5]=nNode.childNodes[4].text; //职位
arr[6]=nNode.childNodes[5].text; //地址
// arr[0]=personNode.childNodes[i].getAttribute("Id"); //序号
// arr[1]=personNode.childNodes[i].childNodes[0].text; //工号
// arr[2]=personNode.childNodes[i].childNodes[1].text; //姓名
// arr[3]=personNode.childNodes[i].childNodes[2].text; //性别
// arr[4]=personNode.childNodes[i].childNodes[3].text; //部门
// arr[5]=personNode.childNodes[i].childNodes[4].text; //职位
// arr[6]=personNode.childNodes[i].childNodes[5].text; //地址
addRow(i+1,"myTable",arr);
}
}
function onFirst()
{
pageIndex=0;
var currIndex=pageIndex;
getPageRecord(currIndex,pageSize)
pageIndex=currIndex ;
document.getElementById("txtCurrPage").value=(pageIndex / pageSize) + 1;
document.getElementById("txtCurrPageRecord").value=pageSize;
}
function onPrev()
{
var currIndex=pageIndex;
currIndex-=pageSize;
getPageRecord(currIndex,pageSize)
pageIndex=currIndex;
document.getElementById("txtCurrPage").value=(pageIndex / pageSize) + 1;
document.getElementById("txtCurrPageRecord").value=pageSize;
}
function onNext()
{
var currIndex=pageIndex;
currIndex+=pageSize;
getPageRecord(currIndex,pageSize)
pageIndex=currIndex;
document.getElementById("txtCurrPage").value=(pageIndex / pageSize) + 1;
document.getElementById("txtCurrPageRecord").value=pageSize;
}
function onLast()
{
if(overSize>0)
{
getPageRecord(lastPage,overSize)
document.getElementById("txtCurrPageRecord").value=overSize;
}
else
{
getPageRecord(lastPage,pageSize)
document.getElementById("txtCurrPageRecord").value=pageSize;
}
pageIndex=lastPage;
document.getElementById("txtCurrPage").value=(pageIndex / pageSize) + 1;
}
function toPage()
{
var index=document.getElementById("txtCurrPage").value
var currIndex=(index-1)*pageSize;
if(event.keyCode==13)
{
getPageRecord(currIndex,pageSize);
}
pageIndex=currIndex;
}
function addRow(i,dataGridId,arr)
{
var row=document.createElement("tr");
var cell=createCellWidthText(i);
row.appendChild(cell);
for(var j=0;j<arr.length;j++)
{
cell=createCellWidthText(arr[j]);
row.appendChild(cell);
}
document.getElementById(dataGridId).firstChild.appendChild(row);
}
function createCellWidthText(text)
{
var cell = document.createElement("td");
var textNode = document.createTextNode(text);
cell.appendChild(textNode);
return cell;
}
function clearRow(obj)
{
var table=document.getElementById(obj);
var nodeTbody=table.firstChild
var length=nodeTbody.childNodes.length;
for(var i=length-1;i>0;i--)
{
nodeTbody.removeChild(nodeTbody.childNodes[i]);
}
}
</script>
<form id="form1" runat="server">
<div>
<table align="center" style="border-right: #0033ff thin solid; border-top: #0033ff thin solid;
border-left: #0033ff thin solid; width: 650px; border-bottom: #0033ff thin solid">
<tr>
<td>
共<input id="txtPageCount" name="txtPageCount" style="width: 33px; color: #0000ff; border-top-style: none; border-right-style: none; border-left-style: none; background-color: transparent; border-bottom-style: none;" type="text" onkeydown="toPage()"/>页/
<input id="txtRecordCount" name="txtRecordCount" style="width: 46px; color: #3300ff; border-top-style: none; border-right-style: none; border-left-style: none; background-color: transparent; border-bottom-style: none;" type="text" onkeydown="toPage()"/>条记录
<input id="btnFirst" type="button" value="首页" onclick="onFirst()"/>
<input id="btnPrev" type="button" value="上一页" onclick="onPrev()"/>
<input id="btnNext" type="button" value="下一页" onclick="onNext()"/>
<input id="btnLast" type="button" value="尾页" onclick="onLast()"/>
第<input id="txtCurrPage" name="txtCurrPage" style="width: 46px; color: #ff3333;" type="text" onkeydown="toPage()"/>
页(当前页<input id="txtCurrPageRecord" name="txtCurrPageRecord" style="width: 22px; color: #ff3333; border-top-style: none; border-right-style: none; border-left-style: none; background-color: white; border-bottom-style: none;" type="text" onkeydown="toPage()"/>条记录)</td>
</tr>
<tr>
<td>
<table width="100%" id="myTable">
<tr style="background-color:Yellow">
<td style="width: 34px; height: 21px;">
Id</td>
<td style="width: 34px; height: 21px;">
序号</td>
<td style="width: 42px; height: 21px;">
工号</td>
<td style="width: 36px; height: 21px;">
姓名</td>
<td style="width: 39px; height: 21px;">
性别</td>
<td style="width: 43px; height: 21px;">
部门</td>
<td style="width: 50px; height: 21px;">
职位</td>
<td style="width: 100px; height: 21px;">
地址</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</form>
</body>
</html>
分享到:
相关推荐
首先,客户端请求整个XML数据,然后使用JavaScript或其他客户端技术(如XSLT)对数据进行处理,实现分页效果。这种方式下,数据传输量可能较大,但服务器端实现简单,只需提供原始XML数据。例如,`xml简单分页效果....
总结,通过JavaScript和XML的结合,我们可以构建出一个功能完善的分页查询系统,既能高效地处理大量数据,又能提供友好的用户交互体验。在实际项目中,可以根据具体需求进一步优化和扩展这些基本功能。
在JavaScript中实现XML数据的分页,我们需要计算总页数,确定每页显示的数据量,以及根据用户的操作(如点击页码)更新显示的内容。这通常涉及到数组的切片操作,以及动态更新HTML元素来显示分页后的数据。 具体...
JavaScript 和 XML 分页是一种在网页上实现数据分块显示的技术,尤其适用于大数据量的列表或表格。这种技术通过JavaScript动态加载和处理XML数据,从而实现用户滚动页面时按需加载更多的内容,有效提高了网页性能和...
5. **实现分页**:通过JavaScript计算每页显示的记录数,遍历XML数据,每次取出一页的数据展示在界面上。分页可以通过添加或删除DOM元素来实现,或者使用CSS隐藏和显示相应数据。 6. **实现排序**:用户点击列头时...
接下来,我们可以通过编程语言,如JavaScript、Python、Java或PHP等,解析XML文件,获取当前请求的分页数据。例如,在JavaScript中,我们可以使用DOM(Document Object Model)或者jQuery的`.parseXML()`方法来解析...
在这个主题中,我们将深入探讨如何利用XML来存储和传递数据,以及如何用JavaScript来实现页面上的搜索与分页功能。 XML是一种结构化数据格式,它允许我们创建自定义的标签来组织和表示信息。在静态页面搜索中,XML...
本篇将详细介绍两种无刷新分页技术:AJAX分页和XML结合XSL的分页。 **一、AJAX分页** AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。在分页场景中,...
在JavaScript中,实现XML数据的读取和分页是一项常见的任务,特别是在处理动态网页和数据展示时。在给出的代码示例中,我们看到一个简单的HTML页面,它使用JavaScript来加载XML文件,并根据用户点击“上一页”或...
JavaScript分页是网页开发中的一个重要技术,用于处理大量数据或内容的显示,使得用户可以方便地浏览和导航。在网页中,当数据无法一次性完全加载时,分页就显得尤为重要,它可以提高页面加载速度,优化用户体验。...
本教程将详细介绍如何使用JavaScript(JS)与XML结合实现分页功能,这是一种经典且实用的技术方案。 首先,我们要理解JavaScript的作用。JavaScript是一种客户端脚本语言,它可以在用户的浏览器上运行,提供动态...
- **数据处理**:Servlet可以根据请求参数(如当前页号、每页数量)查询数据库,执行分页查询,然后将结果封装成JSON或XML格式,便于JavaScript解析。 - **接口设计**:设计一个清晰、高效的API接口,使得...
在本项目中,开发者利用CEFSharp创建了一个爬虫,其核心特点在于通过XML和JavaScript来配置和控制爬取过程。这种设计方法提供了更大的灵活性和可定制性,因为XML可以用来定义爬取规则,而JavaScript则可以在运行时...
JavaScript分页是网页开发中常见的功能,用于处理大数据集时,将内容按页显示,提高用户体验。本项目提供了一种使用JavaScript实现简单而实用的分页解决方案,具有良好的样式效果。 在JavaScript分页中,主要涉及...
本教程将探讨如何使用JavaScript(js)和XML(eXtensible Markup Language)来创建动态表格,实现排序和分页功能,同时允许用户任意移动列。这种技术能够提升用户体验,使数据管理更加灵活和高效。 首先,我们需要...
本主题将深入探讨JavaScript分页控件的设计原理、实现方式以及相关技术点。 首先,JavaScript是一种运行在客户端的脚本语言,它可以直接在用户的浏览器上执行,无需服务器支持。因此,使用JavaScript实现的分页控件...
二、JavaScript分页实现 1. 数据获取:通常,服务器会提供接口,返回当前页的数据。JavaScript通过Ajax(异步JavaScript和XML)技术与服务器进行通信,获取所需数据。 2. 分页逻辑:JavaScript需要计算总页数,这...
JavaScript分页是网页开发中一个常见的技术,它允许用户在不刷新整个页面的情况下,通过点击按钮或链接来加载更多的内容。这种技术对于处理大量数据,如数据库查询结果、文章列表或者用户评论等,非常有效,提高了...
JavaScript和XML分页结合Ajax技术,是Web开发中一种高效且用户体验良好的页面加载方式。它允许用户在不刷新整个页面的情况下动态加载数据,提供流畅的交互体验。本实例将深入探讨这种技术的实现原理和应用。 一、...