C#2.0下用Ajax无刷新快速分页例子(二)

default.aspx:
<%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!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 runat="server">
<title>Ajax无刷新分页</title>
<script language="javascript">
var dtObj=new Object();
function stringToInteger(inputString)
{
  if(inputString == null || inputString == "")
  {
     return 0;
  }
  else
  {
    try
    {
      return parseInt(inputString);
    }
    catch(e)
    {
      return 0;
    }
  }    
}
function numberToString(inputNumber)
{
  return inputNumber.toString();
}
function getUrlParam(param)
{
   var url=window.location.search.substring(1);
   var paramArray=url.split("&");
   for(var i=0;i<paramArray.length;i++)
   {
      var pramArraySub=paramArray[i].split("=");
   if(pramArraySub[0]==param && pramArraySub[1] != "undefined")
     return pramArraySub[1];  
   }
   return "";
}
var pageSize=5;
//var pageNo=stringToInteger(getUrlParam("pageno"));
</script>
</head>
<body>
    <form id="form1" runat="server">
    <div align=center><span id="sp_ShowContent"></span></div>       
    </form>
</body>
</html>
<script language=javascript>
var pageNo =0;
var dtObj = new Object();
dtObj=_Default.GetDataTable().value;// 从后台得到数据
var totalPage=0;
var totalRecord = dtObj.Rows.length;
if((dtObj.Rows.length%pageSize)==0)
  totalPage = dtObj.Rows.length/pageSize;
else  
  totalPage = Math.ceil(dtObj.Rows.length/pageSize);
 function showContent(op)
{
     if(op == "first")
  {
    pageNo = 0;
  }
  else if(op == "previous")
  {
    if(pageNo>0)
    pageNo-=1;
    else
    pageNo=0;
  }
  else if(op == "next")
  {
    if(pageNo<totalPage-1)
     pageNo+=1;
     else
     pageNo = totalPage-1;
  }
  else if(op == "last")
  {
    pageNo=totalPage-1;
  }
  else
  {
    pageNo=0;
  }
  var content = "";
  var startRecord = pageNo*pageSize;
  var endRecord = 0;
  if(pageNo>=totalPage-1)
   endRecord = totalRecord;
  else
     endRecord = (pageNo+1)*pageSize;
  content = '<table width="75%" border="1" cellspacing="0" bordercolordark="#FFFFFF" bordercolorlight="#339900">';
     content += '<tr>';
     content += '<td width="45%">编号</td>';
     content += '<td width="55%">用户名</td>';
     content += '</tr>';
     for(var i=startRecord;i<endRecord;i++)
     {
       content += '<tr>';
       content += '<td width="45%">'+dtObj.Rows[i]["ID"]+'</td>';//ID,UserName is Column Name
       content += '<td width="55%">'+dtObj.Rows[i]["UserName"]+'</td>';
       content += '</tr>';
     }
     content += '<tr align="center">';
     content += '<td colspan="2"><a href="#" onClick="showContent(\'first\')">第一页</a>&nbsp;<a href="#" onClick="showContent(\'previous\')">上一页</a>&nbsp;<a href="#" onClick="showContent(\'next\')">下一页</a>&nbsp;<a href="#" onClick="showContent(\'last\')">最后页</a></td>';
     content += '</tr>';
     content += '</table>'; 
  window.document.getElementById("sp_ShowContent").innerHTML=content;
}
showContent("first");
</script>
posted on 2006-08-22 10:22  自由.Net  阅读(1278)  评论(0编辑  收藏  举报