﻿//-------------------------------------
//JS分页类--初始化
//-------------------------------------
function ShowPage(){
    this.page=1; //当前页数
    this.pageCount=1;//总页数
    this.pageList=5;//分栏数
    this.ln="";//所属语言
    this.id = ""; //页码装载容器
    //this.edition = 2009; //书版本号后台动态传值
}
//-------------------------------------
//JS分页类--页码和页数验证
//-------------------------------------
ShowPage.prototype.CheckPage = function() {
    if (isNaN(this.page)) {
        this.page = 0;
    }
    if (isNaN(this.pageCount)) {
        this.pageCount = 1;
    }
    
    //	if(isNaN(this.page<1)){
    //	    this.page=1;
    //	}
    //	if(isNaN(this.page>this.pageCount)){
    //	    this.page=this.pageCount;
    //	}
    
    //------------2009-10-16
    if (this.page < 0) {
        this.page = 0;
    }
    if (this.page > this.pageCount) {
        this.page = this.pageCount;
    }
    if (this.pageList < 1) {
        this.pageSize = 5;
    }
    //----------------------

    if (isNaN(this.pageList)) {
        this.pageList = 5;
    }
//    if (isNaN(this.pageList < 1)) {
//        this.pageSize = 5;
//    }
    this.page = parseInt(this.page);
    this.pageCount = parseInt(this.pageCount);
    this.pages = parseInt(this.pages);
    this.pageList = parseInt(this.pageList);
}

//-------------------------------------
//JS分页类--生成HTML分页代码
//-------------------------------------
ShowPage.prototype.CreatePage = function() {
 
    var strHtml = "<span>";
    var i;
    //如果总页数少于分栏数
    if (this.pageCount <= this.pageList) {
        for (i = 1; i < this.pageCount; i++) {
            if (i != this.page) {
                strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + i + ',' + this.pageCount + ',\''+this.edition+'\')"><b>' + i + '</b></a>';
            } else {
                strHtml += '<b>' + i + '</b>';
            }
        }
    }
    //如果总页数大于分栏数
    if (this.pageCount > this.pageList) {    
    if (parseInt((this.page - 1), 10) / parseInt(this.pageList, 10) == 0) {
            for (i = 1; i < this.pageList; i++) {
                if (i != this.page) {
                    strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + i + ',' + this.pageCount + ',\''+this.edition+'\')"><b>' + i + '</b></a>';
                } else {
                    strHtml += '<b>' + i + '</b>';
                }
            }
            strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + i + ',' + this.pageCount + ',\''+this.edition+'\')"><b>>></b></a>'
        } else if (parseInt((this.page - 1), 10) / parseInt(this.pageList, 10) == parseInt(this.pageCount, 10) / parseInt(this.pageList)) {
            strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + parseInt(((this.page - 1) / parseInt(this.pageList)) * parseInt(this.pageList)) + ',' + this.pageCount + ',\''+this.edition+'\')"><b><<</b></a>';
            for (i = parseInt(((this.page - 1) / parseInt(this.pageList)) * parseInt(this.pageList)) + 1; i < this.pageCount; i++) {
                if (i != this.page) {
                    strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + i + ',' + this.pageCount + ',\''+this.edition+'\')"><b>' + i + '</b></a>';
                } else {
                    strHtml += '<b>' + i + '</b>';
                }
            }
        } else {
            strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + parseInt(((this.page - 1) / parseInt(this.pageList)) * parseInt(this.pageList)) + ',' + this.pageCount + ',\''+this.edition+'\')"><b><<</b></a>';
            for (i = parseInt(((this.page - 1) / parseInt(this.pageList)) * parseInt(this.pageList)) + 1; i < parseInt(((this.page - 1) / parseInt(this.pageList)) * parseInt(this.pageList)) + 5; i++) {
                if (i != this.page) {
                    strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + i + ',' + this.pageCount + ',\''+this.edition+'\')")"><b>' + i + '</b></a>';
                } else {
                    strHtml += '<b>' + i + '</b>';
                }
            }
            strHtml += '<a href="javascript:void(0);" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',' + i + ',' + this.pageCount + ',\''+this.edition+'\')")"><b>>></b></a>';
        }
    }
    strHtml += '&nbsp;&nbsp;' + this.page + '/' + this.pageCount;
    //strHtml += '&nbsp;&nbsp<input name="p" id="p" type="text" size="2" maxlength="5" value="' + this.page + '" onkeydown="if(event.keyCode==13){gotoPage(\'' + this.id + '\',\'' + this.ln + '\',p.value,' + this.pageCount + ')");}"><input name="Submit" type="button" class="btn" value="GO" onclick="gotoPage(\'' + this.id + '\',\'' + this.ln + '\',p.value,' + this.pageCount + ')")">';
    strHtml += '&nbsp;&nbsp<input name="p" id="p" type="text" size="8" maxlength="8" value="' + this.page + '" onkeydown="if(event.keyCode==13){gotoPage(\'' + this.id + '\',\'' + this.ln + '\',p.value,' + this.pageCount + ',\''+this.edition+'\')}"><lab>&nbsp;&nbsp;请输入页码或型号，快速查阅&nbsp;&nbsp;</lab>';
    strHtml += "</span>";
    return strHtml;
}

//-------------------------------------
//JS分页类--打印分页代码
//-------------------------------------
ShowPage.prototype.PrintPage=function(){
    this.CheckPage();
    if(this.id==""){
        alert('未提供有效参数！');
    }else{
        document.getElementById(this.id).innerHTML=this.CreatePage();
    }
}
