Ajax做分页

article/2025/10/20 9:36:14

用这种ajax做分页的方法比较简单,把代码直接复制就可以,然后根据实际更改一下里面的参数。

1.设置分页显示显示的样式,显示效果如下。

复制代码

<style type="text/css">
*{ margin:0px auto; padding:0px; font-family:"微软雅黑"}
.b3{ list-style:none; width:400px; height:30px; font-size:16px; text-align:center; line-height:30px; vertical-align:middle; position:relative}
.b4{ width:50px; height:30px; float:left; font-size:20px; text-align:center; line-height:30px; vertical-align:middle}
.b4:hover{ cursor:pointer; background-color:#FC6}
#fy_shang{ font-size:16px; text-align:center; line-height:30px; vertical-align:middle; width:60px; float:left}
#fy_xia{ font-size:16px; text-align:center; line-height:30px; vertical-align:middle; width:60px}
#fy_shang:hover{ cursor:pointer; background-color:#FC6}
#fy_xia:hover{ cursor:pointer; background-color:#FC6}
</style>

复制代码

 

2.页数显示代码容器,把这段代码放在</table>后面。

复制代码

<!--分页开始-->
<center>
<ul class="pagination b3" id="fy_list">       
</ul>
<input type="hidden" value="1" id="fy_n" />
</center>
<!--分页结束-->  

复制代码

 

3.ajax实现分页的代码

复制代码

//ajax分页开始
$(document).ready(function(e) {JiaZai();var zys = 0;
//页面加载数据
})
function JiaZai(){        var n = $("#fy_n").val();//页数显示框里面显示的页数$.ajax({url:"shipinguanlichuli.php",data:{n:n,gjz:""},//n是显示的页数。gjz是表格显示中有关键字查询,这里gjz传一个空值,意思是没有查询条件,查询所有的。type:"POST",dataType:"JSON",success: function(data){                                    var s ="";                        for(var i in data){s+="<tr><td><input type='checkbox' class='qx'  value='"+data[i].id+"' name='sc[]' /></td><td class='hidden-xs'>"+data[i].id+"</td><td>"+data[i].name+"</td><td class='hidden-xs'>"+data[i].details+"</td><td class='hidden-xs'>"+data[i].wprice+"</td><td class='hidden-xs'>"+data[i].dprice+"</td><td class='hidden-xs'>"+data[i].class+"</td><td><a href='xiugai.php?c="+data[i].id+"'>修改</a></td><td><a href='shanchuchuli.php?c="+data[i].id+"' οnclick=\"return confirm('确定删除吗?')\">删除</a></td></tr>";//拼接表格显示内容}$("#a22").html(s);//把拼接好的字符串放到要显示的div里面。                                                    }});//获取分页数(列表)$.ajax({url:"zyschuli3.php",type:"POST",dataType:"TEXT",success: function(data){                    //总页数var ys = Math.ceil(data/15); zys = ys;                        var s = "<div><a id='fy_shang' class='b4'>上一页</a></div>";var dangqian = $("#fy_n").val(); //当前页数                        for(var i=dangqian-2;i<=dangqian+2;i++){if(i>0 && i<=ys){if(dangqian==i){s+="<div class='b4' class='active'><a class='fy_zhong b4'>"+i+"</a></div>";}else{s+="<div class='b4'><a class='fy_zhong'>"+i+"</a></div>"}}}s += "<div><a id='fy_xia' class='b4'>下一页</a></div>";$("#fy_list").html(s);//给分页列表加事件JiaShiJian();}})//给分页列表加事件的方法function JiaShiJian(){$("#fy_shang").click(function(){    var n = $("#fy_n").val(); if(n>1){n--;}else{n=1;}$("#fy_n").val(n);//加载数据JiaZai();})$("#fy_xia").click(function(){var n = $("#fy_n").val(); if(n<zys){n++;}else{n=zys;}$("#fy_n").val(n);//加载数据JiaZai();})$(".fy_zhong").click(function(){var n = $(this).text();$("#fy_n").val(n);//加载数据JiaZai();})}

复制代码

 

4.如果要加上关键字查询功能,现在表格上面加上关键字输入框。

关键字:<input id="guanjianzi" type="text" name="key" />    

然后在js代码中多写一步,其实就是重复显示效果的js代码,里面加上条件。下面是分页显示+关键字查询所有的代码。

复制代码

//ajax分页开始
$(document).ready(function(e) {JiaZai();var zys = 0;
//页面加载数据
})
function JiaZai(){        var n = $("#fy_n").val();//页数显示框里面显示的页数$.ajax({url:"shipinguanlichuli.php",data:{n:n,gjz:""},//n是显示的页数。gjz是表格显示中有关键字查询,这里gjz传一个空值,意思是没有查询条件,查询所有的。type:"POST",dataType:"JSON",success: function(data){                                    var s ="";                        for(var i in data){s+="<tr><td><input type='checkbox' class='qx'  value='"+data[i].id+"' name='sc[]' /></td><td class='hidden-xs'>"+data[i].id+"</td><td>"+data[i].name+"</td><td class='hidden-xs'>"+data[i].details+"</td><td class='hidden-xs'>"+data[i].wprice+"</td><td class='hidden-xs'>"+data[i].dprice+"</td><td class='hidden-xs'>"+data[i].class+"</td><td><a href='xiugai.php?c="+data[i].id+"'>修改</a></td><td><a href='shanchuchuli.php?c="+data[i].id+"' οnclick=\"return confirm('确定删除吗?')\">删除</a></td></tr>";//拼接表格显示内容}$("#a22").html(s);//把拼接好的字符串放到要显示的div里面。                                                    }});//获取分页数(列表)$.ajax({url:"zyschuli3.php",type:"POST",dataType:"TEXT",success: function(data){                    //总页数var ys = Math.ceil(data/15); zys = ys;                        var s = "<div><a id='fy_shang' class='b4'>上一页</a></div>";var dangqian = $("#fy_n").val(); //当前页数                        for(var i=dangqian-2;i<=dangqian+2;i++){if(i>0 && i<=ys){if(dangqian==i){s+="<div class='b4' class='active'><a class='fy_zhong b4'>"+i+"</a></div>";}else{s+="<div class='b4'><a class='fy_zhong'>"+i+"</a></div>"}}}s += "<div><a id='fy_xia' class='b4'>下一页</a></div>";$("#fy_list").html(s);//给分页列表加事件JiaShiJian();}})                $("#guanjianzi").keyup(function(){var gjz = $(this).val();var n = $("#fy_n").val();$.ajax({url:"shipinguanlichuli.php",data:{n:n,gjz:gjz},type:"POST",dataType:"JSON",success: function(data){                        var s ="";                        for(var i in data){s+="<tr><td><input type='checkbox' class='qx'  value='"+data[i].id+"' name='sc[]' /></td><td class='hidden-xs'>"+data[i].id+"</td><td>"+data[i].name+"</td><td class='hidden-xs'>"+data[i].details+"</td><td class='hidden-xs'>"+data[i].wprice+"</td><td class='hidden-xs'>"+data[i].dprice+"</td><td class='hidden-xs'>"+data[i].class+"</td><td><a href='xiugai.php?c="+data[i].id+"'>修改</a></td><td><a href='shanchuchuli.php?c="+data[i].id+"' οnclick=\"return confirm('确定删除吗?')\">删除</a></td></tr>";}$("#a22").html(s);                                                                    }});//获取分页数(列表)//var guanjianzi = $("#guanjianzi").val();$.ajax({url:"zyschuli3.php",data:{gjz:gjz},type:"POST",dataType:"TEXT",success: function(data){                    //总页数var ys = Math.ceil(data/15); zys = ys;                        var s = "<li><a id='fy_shang' class='b4'>上一页</a></li>";var dangqian = $("#fy_n").val(); //当前页数for(var i=dangqian-2;i<=dangqian+2;i++){if(i>0 && i<=ys){if(dangqian==i){s+="<li class='active'><a class='fy_zhong b4'>"+i+"</a></li>";}else{s+="<li><a class='fy_zhong b4'>"+i+"</a></li>"}}}s += "<li><a id='fy_xia' class='b4'>下一页</a></li>";$("#fy_list").html(s);//给分页列表加事件JiaShiJian();}})});}//给分页列表加事件的方法function JiaShiJian(){$("#fy_shang").click(function(){            var n = $("#fy_n").val(); if(n>1){n--;}else{n=1;}$("#fy_n").val(n);//加载数据JiaZai();})$("#fy_xia").click(function(){var n = $("#fy_n").val(); if(n<zys){n++;}else{n=zys;}$("#fy_n").val(n);//加载数据JiaZai();})$(".fy_zhong").click(function(){var n = $(this).text();$("#fy_n").val(n);//加载数据JiaZai();})}
</script>

复制代码

 

5.处理页面1  shipinguanlichuli.php

复制代码

<?php
include("./DBDA.class.php");
$db = new DBDA();
$n = $_POST["n"];//获取页数显示框里面的值
$tg = ($n-1)*15;//每页显示15条数据,这里显示的就是当前页的15条数据。
$tj1 = " 1=1 ";//默认条件是个恒成立的,如果没有其他条件就是查询所有的。
if(!empty($_POST["gjz"]))//获取提交的关键字
{$gjz = $_POST["gjz"];$tj1 = " name like '%{$gjz}%' or details like '%{$gjz}%' or dprice like '%{$gjz}%' or dprice like '%{$gjz}%' ";//拼接查询条件
}
$sqlsj = "select * from product where {$tj1} limit {$tg},15 ";    
echo json_encode($db->GuanQuery($sqlsj));

复制代码

 

6.处理页面2 zyschuli3.php

复制代码

<?php
include("DBDA.class.php");
$db = new DBDA();
$tj1 = " 1=1 ";//默认条件是个恒成立的,如果没有其他条件就是查询所有的。
if(!empty($_POST["gjz"]))//获取提交的关键字
{$gjz = $_POST["gjz"];$tj1 = " name like '%{$gjz}%' or details like '%{$gjz}%' or dprice like '%{$gjz}%' or dprice like '%{$gjz}%' ";//拼接查询条件
}
$sql ="select count(*) from product where {$tj1}";//查询符合条件的数据的总条数
$sj = $db->StrQuery($sql);
echo $sj;

复制代码

 


http://chatgpt.dhexx.cn/article/KdNw2oc0.shtml

相关文章

ajax实现分页操作

利用ajax请求数据的特点&#xff0c;来实现分页操作。 主要是利用ajax进行后端分页&#xff0c;当点击对应的页数&#xff0c;ajax请求数据库对应的数据&#xff0c;后端分页可以降低前端请求数据的压力&#xff0c;页面渲染起来比较流畅。 根据后台请求的数据&#xff0c;来创…

XUnit测试框架-Python unittest

选择 语言选择 本次个人作业我选择的语言是Python,了解学习Python有一段时间了但是一直没有练习&#xff0c;所以这次玩蛇&#xff0c;使用的版本是Python3.6。 开发工具选择 我选择的IDE是Pycharm,个人认为Pycharm是一款不错的Py开发工具&#xff0c;用起来得心应手&#xff0…

单元测试-xUnit

单元测试-xUnit Assert常用方法 名称描述Eqalexpected.result)断言结果与期望值相等。该方法的重载版本用于比较不同的类型和集合。该方法的另一种版本接受一个额外参数该对象实现了用于比较对象的IEqualityComparer接口NotEqual(expected,result)断言结果不等于期望值True(r…

xUnit安装及注意事项

前言 对于单元测试&#xff0c;想必大家都已再熟悉不过了&#xff0c;同时单元测试的重要性也越发突出&#xff0c;在招聘中也特别强调单元测试&#xff0c;但是对于微软内置的单元测试还是太过于繁琐&#xff0c;于是都在寻找一种简洁并且更加轻量的测试工具。用的最多的莫过于…

Xunit.net 单元测试学习——按顺序测试

最近一直在提高编码的质量&#xff0c;为了保证质量&#xff0c;必须有一套趁手的兵器&#xff0c;Xunit.Net 就是如此霸气的利器。 怎么编写单元测试 怎么会有如此低级的疑问呢&#xff1f;因为从接触单元测试&#xff0c;到使用上&#xff0c;真的不是一个简单的心路历程&am…

单元测试-xUnit总结

xUnit总结 什么是xUnit xUnit.net是针对.NET Framework的免费&#xff0c;开源&#xff0c;以社区为中心的单元测试工具。 自动化测试的优点 可以频繁的进行测试可以在任何时间进行测试&#xff0c;也可以按计划定时进行&#xff0c;例如&#xff1a;可以在半夜进行自动化测…

单元测试之 Xunit

&#xfeff;&#xfeff; 单元测试项目中引入 xunit.dll 1. 有类 Common&#xff0c;中有方法 Divide(int a, int b)&#xff0c;代码如下 public class Common {public int Divide(int a, int b){if (b 0)return 0;return a / b;} } 2. 在单元测试项目中为方法 Divide 写单元…

使用 xunit 编写测试代码

使用 xunit 编写测试代码 Intro xunit 是 .NET 里使用非常广泛的一个测试框架&#xff0c;有很多测试项目都是在使用 xunit 作为测试框架&#xff0c;不仅仅有很多开源项目在使用&#xff0c;很多微软的项目也在使用 xunit 来作为测试框架。 Get Started 在 xunit 中不需要标记…

C#_Unit Testing 一(xUnit)

一、前言 在VS中新建一个xunit的项目&#xff0c;该项目中已经自动安装了一些Nuget包&#xff0c;其中一个关键的就是xunit&#xff0c;https://xunit.net/。 同时&#xff0c;在同一个解决方案下我们也新建了一个类库&#xff0c;这个类库就是需要被测试的。这里提一点&…

在.NET开发中的单元测试工具之(2)——xUnit.Net

在上一篇《在.NET开发中的单元测试工具之(1)——NUnit》中讲述了如何使用NUnit在.NET开发中进行单元测试以及NUnit的一些缺点&#xff0c;今天将讲述如何使用xUnit.Net来进行单元测试。 xUnit.Net介绍 xUnit.net的创造者的创造者是Jim Newkirk和Brad Wilson从包括NUnit及其它单…

单元测试中Assert详解-xUnit

前一篇&#xff1a;详谈单元测试-xUnit 简介 Assert 是基于代码的返回值、对象的最终状态、事件是否发生等情况来评估测试的结果。Assert 的结果可能是 Pass 或者 Fail。如果所有的 Asserts 都通过了&#xff0c;那么整个测试就通过了。如果任何 Asserts 失败了&#xff0c;那…

xUnit-Moq框架

基于上一次的单元测试-xUnit进行 Models文件夹 Staff类修改为&#xff1a; public class Staff { public int Id { get; set; } public string Name { get; set; } public string State { get; set; } public int Age { get; set; } } 创建一个IRepository接口…

xUnit.net入门

xUnit.net是一个免费的、开源的、以社区为中心的.net框架单元测试工具。 本文在Win10Visual Studio2022-Preview下&#xff0c;创建一个简单的.Net Framework4.8的xUnit.net测试项目。 1、新建项目 打开VS2022&#xff0c;新建项目&#xff0c;弹出“创建新项目”窗口&#…

xUnit总结--学习笔记

xUnit.net是针对.NET Framework的免费&#xff0c;开源&#xff0c;以社区为中心的单元测试工具。 自动化测试的优点# 可以频繁的进行测试可以在任何时间进行测试&#xff0c;也可以按计划定时进行&#xff0c;例如&#xff1a;可以在半夜进行自动化测试比人工测试速度快可以更…

Xunit入门

本节记录Xunit单元测试的入门知识&#xff0c;以2.1版本作为入门示例。 1、新建一个类库项目 2、在Nuget中搜索xunit&#xff0c;这里我们只选xUnit.net和xunit.runner.visualstudio包。 其中xUnit是框架&#xff0c;而xunit.runner.visualstudio是vs插件包&#xff0c;让我们可…

3. 使用xUnit进行单元测试

实现.NET Core时&#xff0c;xUnit可用于创建单元测试&#xff0c;.NET Core团队使用了该产品。xUnit是一个开源实现方案&#xff0c;创建NUnit 2.0的开发人员创建了它。现在&#xff0c;.NET Core命令行界面支持MSTest和xUnit。 提示&#xff1a; xUnit的文档可参阅https://…

详谈单元测试-xUnit

简介 xUnit.net 是针对 .NET 的免费&#xff0c;开源单元测试框架&#xff0c;可并行测试、数据驱动测试。测试项目需引用被测试项目&#xff0c;从而对其进行测试&#xff0c;测试项目同时需要引用 xUnit。测试编写完成后&#xff0c;用 Test Runner 来测试项目&#xff0c;T…

01 如何利用xUnit框架对测试用例进行维护-xUnit简介及基本使用方法(基于Junit4)

1、xUnit是什么 先看Wikipedia上的解释 xUnit是一系列测试框架的统称&#xff0c;最开始来源于一个叫做Smalltalk的SUnit框架&#xff0c;现在各种面向对象的语言&#xff0c;如Java、Python的鼻祖就是Smalltalk&#xff0c;后来这些语言都借助了Sunit框架的理念&#xff0c;有…

【IoT】物联网NB-IoT之移动oneNET平台硬件接入

主要实现开发者实际的终端设备在 OneNET 平台上的创建、连接和数据交互。在完成用户注册和产品创建后&#xff0c;即可根据相关所创建产品的协议类型选择相应的硬件接入的开发。 接入流程可参见下图&#xff1a; 1、LWM2M 协议 - NB-IoT 测试接入流程分为平台域和设备域&…

【安装工具】【ARM-DS-5】成功破解ARM DS-5 v5.26.0 + 配置高通MDM9026芯片的demo==》成功编译得到demo.bin文件

Note&#xff1a;Win7 64环境 安装破解ARM DS-5 v5.26.0 http://blog.csdn.net/qq_27295631/article/details/68582582 验证破解成功 安装MinGW http://blog.csdn.net/qq_27295631/article/details/68582582 设置系统属性-环境变量(bin/lib/inc) ARMBIN C:\Program Files…