asp.netajaxPHPajax分页类代码
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了asp.netajaxPHPajax分页类代码,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含8549字,纯文字阅读大概需要13分钟。
内容图文
//本分页类不处理SQL;
//大大的加快了分页功能
//http://blog.csdn.net/fkedwgwy
//潇湘博客--潇湘
/**
演示
require_once('../libs/classes/page.class.php');
$page=new page(array('total'=>1000,'perpage'=>20));
echo 'mode:1
'.$page->show();
echo '
mode:2
'.$page->show(2);
echo '
mode:3
'.$page->show(3);
echo '
mode:4
'.$page->show(4);
echo '
开始AJAX模式:';
$ajaxpage=new page(array('total'=>1000,'perpage'=>20,'ajax'=>'ajax_page','page_name'=>'test'));
echo 'mode:1
'.$ajaxpage->show();
*/
class Zend_Page
{
/**
* config ,public
*/
var $page_name="page";//page标签,用来控制url页。比如说xxx.php?PB_page=2中的PB_page
var $next_page='>';//下一页
var $pre_page='<';//上一页
var $first_page='First';//首页
var $last_page='Last';//尾页
var $pre_bar='<<';//上一分页条
var $next_bar='>>';//下一分页条
var $format_left='';
var $format_right='';
var $is_ajax=false;//是否支持AJAX分页模式
var $next_ten_page=">>>";
var $per_ten_page="<<<";
/**
* private
*
*/
var $pagebarnum=10;//控制记录条的个数。
var $totalpage=0;//总页数
var $ajax_acti is not a positive integer!');
if((!is_int($perpage))||($perpage<=0))$this->error(__FUNCTION__,$perpage.' is not a positive integer!');
if(!empty($array['page_name']))$this->set('page_name',$array['page_name']);//设置pagename
$this->_set_nowindex($nowindex);//设置当前页
$this->_set_url($url);//设置链接地址
$this->totalpage=ceil($total/$perpage);
$this->total=$total;
$this->offset=($this->nowindex-1)*$perpage;
if(!empty($array['ajax']))$this->open_ajax($array['ajax']);//打开AJAX模式
}
/**
* 设定类中指定变量名的值,如果改变量不属于这个类,将throw一个exception
*
* @param string $var
* @param string $value
*/
function set($var,$value)
{
if(in_array($var,get_object_vars($this)))
$this->$var=$value;
else {
$this->error(__FUNCTION__,$var." does not belong to PB_Page!");
}
}
/**
* 打开倒AJAX模式
*
* @param string $action 默认ajax触发的动作。
*/
function open_ajax($action)
{
$this->is_ajax=true;
$this->ajax_acti
}
/**
* 获取显示"下一页"的代码
*
* @param string $style
* @return string
*/
function next_page($style='')
{
if($this->nowindex<$this->totalpage){
return $this->_get_link($this->_get_url($this->nowindex+1),$this->next_page,$style);
}
return '
}
/**
* 获取显示“上一页”的代码
*
* @param string $style
* @return string
*/
function pre_page($style='')
{
if($this->nowindex>1){
return $this->_get_link($this->_get_url($this->nowindex-1),$this->pre_page,$style);
}
return '
}
/**
* 获取显示“上十页”的代码
*
* @param string $style
* @return string
*/
function pre_ten_page($style='')
{
if(intval($this->nowindex/10)+1>1){
return $this->_get_link($this->_get_url(intval($this->nowindex/10)*10-5),$this->pre_ten_page,$style);
}
return '
}
/**
* 获取显示"下十页"的代码
*
* @param string $style
* @return string
*/
function next_ten_page($style='')
{
if(intval($this->nowindex/10)
return $this->_get_link($this->_get_url((intval($this->nowindex/10)+1)*10+5),$this->next_ten_page,$style);
}
return '
}
/**
* 获取显示“首页”的代码
*
* @return string
*/
function first_page($style='')
{
if($this->nowindex==1){
return '
}
return $this->_get_link($this->_get_url(1),$this->first_page,$style);
}
/**
* 获取显示“尾页”的代码
*
* @return string
*/
function last_page($style='')
{
if($this->nowindex==$this->totalpage){
return '
}
return $this->_get_link($this->_get_url($this->totalpage),$this->last_page,$style);
}
function nowbar($style='',$nowindex_style='')
{
$plus=ceil($this->pagebarnum/2);
if($this->pagebarnum-$plus+$this->nowindex>$this->totalpage)$plus=($this->pagebarnum-$this->totalpage+$this->nowindex);
$begin=$this->nowindex-$plus+1;
$begin=($begin>=1)?$begin:1;
$return='';
for($i=$begin;$i<$begin+$this->pagebarnum;$i++)
{
if($i<=$this->totalpage){
if($i!=$this->nowindex)
$return.=$this->_get_text($this->_get_link($this->_get_url($i),$i,$style));
else
$return.=$this->_get_text('
}else{
break;
}
$return.="\n";
}
unset($begin);
return $return;
}
/**
* 获取显示跳转按钮的代码
*
* @return string
*/
function select()
{
$return='';
return $return;
}
/**
* 获取mysql 语句中limit需要的值
*
* @return string
*/
function offset()
{
return $this->offset;
}
/**
* 控制分页显示风格(你可以增加相应的风格)
*
* @param int $mode
* @return string
*/
function show($mode=1,$url='')
{
switch ($mode)
{
case '1':
$this->next_page='下一页';
$this->pre_page='上一页';
return $this->pre_page().$this->nowbar().$this->next_page().'第'.$this->select().'页';
break;
case '2':
$this->next_page='下一页';
$this->pre_page='上一页';
$this->first_page='首页';
$this->last_page='尾页';
return $this->first_page().$this->pre_page().'[第'.$this->nowindex.'页]'.$this->next_page().$this->last_page().'第'.$this->select().'页';
break;
case '3':
$this->next_page='下一页';
$this->pre_page='上一页';
$this->first_page='首页';
$this->last_page='尾页';
return $this->first_page().$this->pre_page().$this->next_page().$this->last_page();
break;
case '4':
$this->next_page='next';
$this->pre_page='last';
return $this->pre_page().$this->nowbar().$this->next_page();
break;
case '5':
return $this->pre_bar().$this->pre_page().$this->nowbar().$this->next_page().$this->next_bar();
break;
case '6':
//启用了“上一页”,“下一页”,“最后一页”。可根据情况启用“第一页”。
//$this->first_page='';
$this->pre_page='';
$this->next_page='';
$this->last_page='最后一页';
//return "
return "
break;
case '7':
$this->next_page='';
$this->pre_page='';
$this->first_page='';
$this->last_page='';
if($this->totalpage==0)
{$this->nowindex=0;}
return $this->first_page()." ".$this->pre_page()." ".$this->next_page()." ".$this->last_page()." ".$this->select();
break;
case '8':
//启用了“上一页”,“下一页”,“最后一页”。可根据情况启用“第一页”。
//$this->first_page='';
$this->pre_page='';
$this->next_page='';
$this->last_page='最后一页';
if($this->totalpage==0)
{$this->nowindex=0;}
//return "
return "
break;
}
}
/*----------------private function (私有方法)-----------------------------------------------------------*/
/**
* 设置url头地址
* @param: String $url
* @return boolean
*/
function _set_url($url="")
{
if(!empty($url)){
//手动设置
$this->url=$url.((stristr($url,'?'))?'&':'?').$this->page_name."=";
}else{
//自动获取
if(empty($_SERVER['QUERY_STRING'])){
//不存在QUERY_STRING时
$this->url=$_SERVER['REQUEST_URI']."?".$this->page_name."=";
}else{
//
if(stristr($_SERVER['QUERY_STRING'],$this->page_name.'=')){
//地址存在页面参数
$this->url=str_replace($this->page_name.'='.$this->nowindex,'',$_SERVER['REQUEST_URI']);
$last=$this->url[strlen($this->url)-1];
if($last=='?'||$last=='&'){
$this->url.=$this->page_name."=";
}else{
$this->url.='&'.$this->page_name."=";
}
}else{
//
$this->url=$_SERVER['REQUEST_URI'].'&'.$this->page_name.'=';
}//end if
}//end if
}//end if
}
/**
* 设置当前页面
*
*/
function _set_nowindex($nowindex)
{
if(empty($nowindex)){
//系统获取
if(isset($_GET[$this->page_name])){
$this->nowindex=intval($_GET[$this->page_name]);
}
}else{
//手动设置
$this->nowindex=intval($nowindex);
}
}
/**
* 为指定的页面返回地址值
*
* @param int $pageno
* @return string $url
*/
function _get_url($pageno=1)
{
return $this->url.$pageno;
}
/**
* 获取分页显示文字,比如说默认情况下_get_text('1')将返回[1]
*
* @param String $str
* @return string $url
*/
function _get_text($str)
{
return $this->format_left.$str.$this->format_right;
}
/**
* 获取链接地址
*/
function _get_link($url,$text,$style=''){
$style=(empty($style))?'':'class="'.$style.'"';
if($this->is_ajax){
//如果是使用AJAX模式
return ''.$text.'';
}else{
return ''.$text.'';
}
}
/**
* 出错处理方式
*/
function error($function,$errormsg)
{
die('Error in file '.__FILE__.' ,Function '.$function.'() :'.$errormsg);
}
}
?>
以上就介绍了asp.net ajax PHP ajax 分页类代码,包括了asp.net ajax方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
内容总结
以上是互联网集市为您收集整理的asp.netajaxPHPajax分页类代码全部内容,希望文章能够帮你解决asp.netajaxPHPajax分页类代码所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
【asp.netajaxPHPajax分页类代码】教程文章相关的互联网学习教程文章
ajax分页查询【代码】
用ajax实现对数据库的查询以及对查询数据进行分页主页面代码<html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>无标题文档</title> <script src="jquery-1.11.2.min.js"></script> <style type="text/css"> .dangqian{ background-color:#69F} </style> </head><body><div> <input type="text" id="key" /> <input type="button" value="查询" i...
用ES6写分页=>ajax实现(已解决多bug)【代码】
其实分页之前听过,但不知道有什么需求;今天趁着有空,写了一个关于es6的分页,如果有朋友不熟悉es6可以转换为es5语法对于分页这个小功能可以提几点需求:页面加载时用ajax显示的第一页内容;页面每次请求的任务数可以自由设定;代码可以多复用;点击页面的下一页,上一页不能超过页面总数;对于当前页面显示的内容,对于相应位置的序号,且点击当前序号不会再次请求。这次没有做多页面数可以缩进,不过也不是很难,感兴趣的朋友可...
AspNetAjaxPager,Asp.Net通用无刷新Ajax分页控件,支持多样式多数据绑定【图】
本控件可以对GridView,Repeater,DataGrid,DataList...几乎所有的.net数据绑定控件进行分页,全部无刷新,数据绑定部分可以使用存储过程也可以直接使用sql语句,这对本控件没有任何干扰!本控件具有较好的用户界面,能够根据需要变换各种样式,配合css控制效果则更好! 1.分页样式效果图: 2.如何使用:于bin目录下添加:AspNetAjaxPager.dll引用 aspx文件内容: 复制代码 代码如下:<%@ Page Language="C#" AutoEventWireup="true" ...
ajax实现分页【代码】【图】
使用ajax分页原理:第一步:做一个表格 第二步:封装两个方法。第三步:新建个负责显示页面。第四步:做一个纯PHP处理页面处理要显示页的所有数据首先使用一张数据比较多的数据库中的表格: 首页面加载后首先导入所有数据,并显示前20条数据。<!doctype html> <html lang="en"> <head><meta charset="UTF-8" /><title>Document</title><script src="jquery-1.11.2.min.js"></script> </head> <body> <div><input type="text" id="k...
jquery ajax分页插件特效源代码demo完整版【图】
原文:jquery ajax分页插件特效源代码demo完整版源代码下载地址:http://www.zuidaima.com/share/1550463586798592.htm网上找的,原版本没有测试数据和建表脚本啥的,我给加上了。原文:http://blog.csdn.net/springmvc_springdata/article/details/41940273
jqPaginator分页(ajax用法和form表单提交用法)【代码】【图】
一般使用方法<!DOCTYPE html><html><head lang="en"><meta charset="UTF-8"><title></title><link rel="stylesheet" href="res/bootstrap.min.css"/></head><body style="padding:100px"><ul class="pagination" id="pagination"></ul><script src="res/jquery-1.7.2.min.js"></script><script src="res/jqPaginator.min.js"></script><script> $("#pagination").jqPaginator({totalPages:20, //总页数 visiblePages: 5, ...
Ajax+存储过程真分页实例解析(10W数据毫秒级+项目解析)【代码】【图】
周末闲来无事,突然想写个分页的东西玩玩,说走就走 在文章最后我会把整个项目+数据库附上,下载下来直接运行就可以看效果了。整个项目采用的是简单三层模式,开发平开是VS2010+SQL2012一、我要做什么很显然,我想完成一个数据的真分页功能,怎么完成呢,干脆就写一个列表页,取名为:学生列表页信息。列表页当数据量很大的时候,如果采用的假分页,将导致漫长的等待,同时极大的占用服务器资源等等。总之,诸多不便,十分不科学。...
Django - Ajax分页【代码】
目前总结了2种方法:1. Ajax 分页尼玛各种google,stackoverflow,搞了好久才总结出这个,之前使用Pagination tag loading的方式不好用,并且不能进行ajax提交请求的页面无刷新的方式去分页1.view.py 1from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger2from django.shortcuts import render3def xxx(request):4 rows = cursor.fetchall()5 paginator = Paginator(rows, 15) //how...
PHP+AJAX无刷新分页实现代码详解(1/2)_PHP教程
PHP+AJAX无刷新分页实现代码详解,最近在看ajax 教程,就想写个简单入门的PHP+AJAX无刷新分页,我们依据ajax开发框架 代码如下var http_request=false;function send_request(url){//初始化,指定处理函数,发送请求的函数 http_request=false; //开始初始化XMLHttpRequest对象 if(window.XMLHttpRequest){//Mozilla浏览器http_request=new XMLHttpRequest();if(http_request.overrideMimeType){//设置MIME类别http_request.overrid...
phpajax分页四_PHP教程
ajax分页 php ajax 分页 java ajax分页 asp.net ajax分页 jquery ajax 分页 jsp ajax无刷新分页 asp ajax分页 ajax 分页问题 ajax实现分页 ajax jsp分页 最就是php的result.php文件喽,://一系列从数据库的查询造作这里就不多说了....自己参考以下就知道了//PHP服务端/*PHP分页函数function Ajaxpage($sql,$num){ global $db; $pageno=$_GET['pageno']; $pageno=(int)$pageno; if(empty($pageno)||$pageno $res...
ajax怎样实现bootstrap模态框分页查询功能【图】
这次给大家带来ajax怎样实现bootstrap模态框分页查询功能,ajax实现bootstrap模态框分页查询功能的注意事项有哪些,下面就是实战案例,一起来看一下。一 、效果图二、JSfunction getManagerList(dealerId,page2){ macAddress = document.getElementById("activeXDemo").getMac(); $.get("${ctxPath}/common/dealer/manager?"+Math.random(), { page2: page2, pageSize2: 9, dealerId: dealerId, macAddress:macAddress }, function...
BootstrapPaginator分页插件与ajax相结合实现动态无刷新分页效果【图】
Bootstrap Paginator分页插件下载地址:DownloadVisit Project in GitHub1.这是需要分页的页面放的 js函数:<span style="font-size:14px;">function paging(page){ $.ajax({ type: "GET", url: "${ctx}/api/v1/user/1/"+(page-1)+"/5", dataType:"json", success: function(msg){ ....//省略(查询出来数据) } }); $.ajax({ type: "GET", url:"${ctx}/api/v1/user/count/1", dataType:"json", success:function(msg){ var pages ...
ASP.NET使用ajax实现分页局部刷新页面功能
listview列表实现分页是非常容易的。ListView分页是非常简单的,加上一个DataPager控件,把ListView的ID赋予就可以了。最开始我就是这么写的。(网上有人说这样是伪分页?) <asp:ListView ID="newBlogItems" runat="server" DataSourceID="AccessDataSource1" ViewStateMode="Disabled"><ItemTemplate><li class="newBlogItem">.....</li></ItemTemplate></asp:ListView> <asp:DataPager ID="DataPager1" runat="server" PageSize=...
分享精心挑选的12款优秀jQueryAjax分页插件和教程_jquery【图】
Ajax 技术的出现使得 Web 项目的用户体验有了极大的提高,如今借助优秀的 jQuery 框架很容易实现各种基于 Ajax 技术实现的功能。我们一起来看看下面这些优秀的分页插件。1.Client-side jQuery pagination plugin : jPages jPages 是一款非常不错的客户端分页插件,有很多特色,例如自动播放、按键翻页、延迟加载等等。浏览详情 在线演示 2. jPaginate: A Fancy jQuery Pagination Plugin jPaginate 是一款非常精致的分页插件,提供...
用AjaxPro实现无刷新翻页效果及数据库分页技术介绍
在看本文之前,建议查看本人的系列文章: 《AjaxPro与服务器端交互过程中如何传值》:http://blog.csdn.net/zhoufoxcn/archive/2008/01/05/2026908.aspx 《用AjaxPro实现二级联动》:http://blog.csdn.net/zhoufoxcn/archive/2008/01/07/2029204.aspx 《用Aj在看本文之前,建议查看本人的系列文章:《AjaxPro与服务器端交互过程中如何传值》:http://blog.csdn.net/zhoufoxcn/archive/2008/01/05/2026908.aspx 《用AjaxPro实现二级...