Js 分页类 (适合Ajax分页用)
调用方法如下:
var p = new Pager(5, 10);
p.init('页码所在的容器ID', dataOp);
function dataOp() {
// ajax数据操作
SendContent("/Admin/TopicService.asmx/GetTopicList?currentPageIndex=" + p.currentPage + "&pageSize=" + p.pageSize, "GET", "", ajax postback method);
}
JS代码如下:
// ==============================================================================
// Created by Bndy at 2010/3/18
// Copyright (c) 2010 ahdzlc, All rights reserved.
//
// * * * * * * * * * * * * * * * *
// * Q Q : 8 1 7 9 5 7 0 5 *
// * M S N : bndy533@msn.com *
// * Email : bndy533@163.com *
// * * * * * * * * * * * * * * * *
//
// ------------------------------------------------------------------------------
// JS 分页函数
// 适合Ajax分页时使用
// ==============================================================================
var pager;
var handler;
var Pager = function(totalRecordCount, pageSize) {
this.pageSize = pageSize;
this.currentPage = 1;
this.totalPageCount = totalRecordCount % pageSize != 0 ? Math.floor(totalRecordCount / pageSize) + 1 : Math.floor(totalRecordCount / pageSize);
var ele;
this.getBeginPageNum = function() {
if (this.pageSize > this.totalPageCount) {
return 1;
}
if (this.currentPage > this.totalPageCount) {
return this.totalPageCount - this.pageSize + 1;
}
else {
return Math.floor((this.currentPage - 1) / this.pageSize) * this.pageSize + 1;
}
};
this.getEndPageNum = function() {
var x = Math.floor((this.currentPage - 1) / this.pageSize) * this.pageSize + this.pageSize;
if (this.pageSize > this.totalPageCount || this.currentPage > this.totalPageCount || x > this.totalPageCount) {
return this.totalPageCount;
相关文档:
Ajax 由 HTML、JavaScript™ 技术、DHTML 和 DOM 组成,这一杰出的方法可以将笨拙的 Web 界面转化成交互性的 Ajax 应用程序。本文的作者是一位 Ajax 专家,他演示了这些技术如何协同工作 —— 从总体概述到细节的讨论 —— 使高效的 Web 开发成为现实。他还揭开了 Ajax 核心概念的神秘面纱,包括 ......
对于很多 Web 开发人员来说,只需要生成简单的请求并接收简单的响应即可;但是对于希望掌握 Ajax 的开发人员来说,必须要全面理解 HTTP 状态代码、就绪状态和 XMLHttpRequest 对象。在本文中,Brett McLaughlin 将向您介绍各种状态代码,并展示浏览器如何对其进行处理,本文还给出了在 Ajax 中使用的比较少见的 HTTP 请求。 ......
在一个小型项目中,我使用了Ajax Extensions中的UpdatePanel控件,在本地调试运行时好的,可以看到ajax的异步刷新效果,但是当发布到安装了.net framework 3.5 sp1的server 2003上去之后,发现ajax效果没有了,也就是说本来的异步提交变成了非Ajax方式的POST,而且没有报告任何错误。
对比开发时和运行 ......
ajax.open方法中,第3个参数是设同步或者异步。prototype等js类库一般都默认为异步,即设为true。
先说下同步的
情况下,js会等待请求返回,获取status。不需要onreadystatechange事件处理函数。
而异步则需要
onreadystatechange事件处理,且值为4再正确处理下面的内容
......
首先把代码给大家,下面是解释
/**
* 获得XMLHttpRequest对象
*/
function createXHR(){
var x=[function(){return new ActiveXObject("Msxm12.XMLHTTP");},function(){return xmhttp=new ActiveXObject("Microsoft.XMLHTTP");},
&nb ......