//HTML Outline对象 var m_objSrcContent = null; //HTML Column对象 var m_arSingleRec = null; //获取分页参数 var m_nPageSize = 8; //常量每页条数 var m_nRecSize = 1; //常量每行条数 //设定XML的检索方式 //DocumentsDataSrc.XMLDocument.setProperty("SelectionLanguage", "XPath"); //检索所有的节点 var m_arNodes = null; //记录数 var m_nRecCount = 0; //总页数 var m_nPageCount = 0; //页码文字输出区 var CP = document.getElementById("CP"); //初始化各种分页变量 function initPage(){ m_objSrcContent = document.all("OutlineContent"); if(m_objSrcContent == null){ alert( "没有定义Outline区域!分页代码发生异常!" ); return false; } m_arSingleRec = m_objSrcContent.all("ColumnContent"); if(m_arSingleRec == null){ //alert( "没有定义Column区域!分页代码发生异常!" ); //return false; } //获取分页参数 m_nPageSize = 8; //常量每页条数 if(m_objSrcContent.PageSize && !isNaN(m_objSrcContent.PageSize)){ m_nPageSize = parseInt(m_objSrcContent.PageSize); } m_nRecSize = 1; //常量每行条数 if(m_arSingleRec != null && m_arSingleRec.length)m_nRecSize = m_arSingleRec.length; //提取数据 //默认提取所有的数据 var sPath = "//D"; m_arNodes = DocumentsDataSrc.XMLDocument.selectNodes(sPath); m_nRecCount = m_arNodes.length; m_nPageCount = 0; //计算总页数 if(m_nRecCount%m_nPageSize>0) m_nPageCount = (m_nRecCount - (m_nRecCount%m_nPageSize))/m_nPageSize +1; else m_nPageCount = m_nRecCount/m_nPageSize; //取得当前页对象并 //默认定位到第一页 toPage(1); //将标志位设回 m_bFirst = false; } //===========getCurrPage(_currentPage)规范跳转页码函数;_currentPage 跳转页码输入值=== function getCurrPage(_currentPage){ var cPage =1; if( _currentPage<=0 || _currentPage=="") cPage =1; else if(_currentPage>m_nPageCount) cPage = m_nPageCount; else cPage = _currentPage; return cPage; } //===============goto()直接跳转函数============================================= function goto(){ toPage(CP.value); } //===============toPage(_pageNo)跳转函数;_pageNo要跳转的页号==================== function toPage(_pageNo){ if(m_nRecCount <= 0)return false; //删除原有代码 //removeAllOldNodes(); var cP = getCurrPage(_pageNo); var startPos = cP*m_nPageSize - m_nPageSize; var endPos = 0; if(cP*m_nPageSize>m_nRecCount) endPos=m_nRecCount; else endPos = cP*m_nPageSize; var nOutlineCount = 0; for(var i=startPos; i[首页] "; pL+="[上一页] "; } else{ pL+="[首页] "; pL+="[上一页] "; } for(var pageN=1;pageN<=m_nPageCount;pageN++){ if(pageN==CP.value){ nL+=""+pageN+" "; } // else // pL += ""+pageN+" "; } if(CP.value[下一页] "; pL+="[尾页] "; } else{ pL+="[下一页] "; pL+="[尾页] "; } pL += "当前第 "+nL+" 页 共 "+m_nPageCount+" 页 "; var showPageLine = document.getElementsByName("pl"); for(var pls=0;pls=0; i--){ arTemp[i].removeNode(true); } }else{ arTemp.removeNode(true); } return true; } var m_bFirst = true; var m_arOutLine = new Array(); /** * 复制分页节点 * **/ function createItemHTML(_nCurrIndex, _nEndIndex, _nOutlineIndex){ if(m_arNodes.length < _nCurrIndex)return 0; var objContent = null; if(m_bFirst){//创建节点 //复制Outline节点 objContent = m_objSrcContent.cloneNode(true); //设置ID objContent.id = "OutlineClone"; m_arOutLine[m_arOutLine.length] = objContent; } else { if(_nOutlineIndex >= m_arOutLine.length) { alert("算法有误!"); return; } objContent = m_arOutLine[_nOutlineIndex]; } //设置Display objContent.style.display = ""; //修改ID var arSingleRec = objContent.all("ColumnContent"); if(arSingleRec==null)arSingleRec = objContent var recCount = 1; if(arSingleRec.length)recCount = arSingleRec.length; var i = 0; for(i=0; i= _nEndIndex)break; //获取当前的XML节点 var xmlNode = m_arNodes[_nCurrIndex+i]; //遍历所有属性子节点,从XML中提取数据 var objSingleRec = null; if(recCount>1)objSingleRec = arSingleRec[i]; else objSingleRec = arSingleRec; var arAllField = objSingleRec.all; for(var j=0; j