ajax实现分页和分页查询
之前有写过ajax的加载页面,是非常简单的,而且不需要重新刷新页面,写起来也是非常的方便,今天写的分页是不用封装page.class.php的,
是单纯的js和ajax写出来的
首先为了页面的整齐与美观,我用到了bootstrap,需要引进所需要的文件包
<link href="dist/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<script src="../jquery/jquery-1.11.2.min.js"></script>
<script src="dist/js/bootstrap.min.js"></script>
下面是页面显示的内容
<div><input type="text" id="name" /> <input type="button" value="查询" id="chaxun" /></div>
<br />
<table class="table table-striped">
<thead>
<tr>
<th width="30%">国家代号</th>
<th width="30%">国家名称</th>
<th width="40%">父级代号</th>
</tr>
</thead>
<tbody id="tb"> </tbody>
</table>
<br />
<div><ul class="pagination" id="fenye"> </ul></div>
下面是js部分了,用的ajax来写
<script type="text/javascript"> var page = 1; //当前页 //加载数据
Load();
//加载分页信息
LoadFenYe(); //给查询加点击事件
$("#chaxun").click(function(){
//将当前页重置
page = 1;
//加载数据
Load();
//加载分页信息
LoadFenYe();
}) //加载分页信息的方法
function LoadFenYe()
{
var s = "";
var name = $("#name").val(); var minys = 1;
var maxys = 1;
$.ajax({
async:false,
data:{name:name},
type:"POST",
url:"zys.php",
dataType:"TEXT",
success: function(data){
maxys = data;
}
});
//加载上一页
s += "<li class='syy'><a>«</a></li>"; //加载分页列表
for(var i=page-4;i<page+5;i++)
{
if(i>=minys && i<=maxys)
{
if(i==page)
{
s += "<li class='active list'><a>"+i+"</a></li>";
}
else
{
s += "<li class='list'><a>"+i+"</a></li>";
}
}
} //加载下一页
s += "<li class='xyy'><a>»</a></li>"; //显示分页列表
$("#fenye").html(s); //给列表加点击事件
$(".list").click(function(){
//改变当前页
page = $(this).text();
//加载数据
Load();
//加载分页信息
LoadFenYe();
})
//上一页加点击事件
$(".syy").click(function(){
//改变当前页
if(page>1)
{
page = parseInt(page)-1;
//加载数据
Load();
//加载分页信息
LoadFenYe();
}
})
//下一页加点击事件
$(".xyy").click(function(){ //改变当前页
if(page<maxys)
{
page = parseInt(page)+1;
//加载数据
Load();
//加载分页信息
LoadFenYe();
} })
}
//加载数据的方法
function Load()
{
var name = $("#name").val();
$.ajax({
url:"jiazai.php",
data:{page:page,name:name},
type:"POST",
dataType:"TEXT",
success: function(data){
var str = "";
var hang = data.split("|");
for(var i=0;i<hang.length;i++)
{
var lie = hang[i].split("^");
str = str+"<tr><td>"+lie[0]+"</td><td>"+lie[1]+"</td><td>"+lie[2]+"</td></tr>";
}
$("#tb").html(str); }
}); }
jiazai.php页面的代码如下:
<?php
include("DADB.class.php");
$db=new DADB();
$page=$_POST["page"];
$key=$_POST["name"];
$num=20;
$tiao=($page-1)*$num;
$sql="select * from chinastates WHERE areaname like '%{$key}%' limit {$tiao},{$num}";
echo $db->StrQuery($sql,1);
zys.php代码如下:
<?php
include("DADB.class.php");
$db=new DADB();
$key=$_POST["name"];
$sql="select count(*) from chinastates where areaname like '%{$key}%'"; //显示总共有多少条内容
$zts=$db->StrQuery($sql);
echo ceil($zts/20);
这样分页和查询功能就可以完全实现了
ajax实现分页和分页查询的更多相关文章
- ajax分页与组合查询配合使用
使用纯HTML页与js.ajax.Linq实现分页与组合查询的配合使用 <body> <div id="top"><input type=" ...
- 基于Jquery+Ajax+Json+存储过程 高效分页
在做后台开发中,都会有大量的列表展示,下面给大家给大家分享一套基于Jquery+Ajax+Json+存储过程高效分页列表,只需要传递几个参数即可.当然代码也有改进的地方,如果大家有更好的方法,愿留下宝 ...
- 基于SpringMVC+Bootstrap+DataTables实现表格服务端分页、模糊查询
前言 基于SpringMVC+Bootstrap+DataTables实现数据表格服务端分页.模糊查询(非DataTables Search),页面异步刷新. 说明:sp:message标签是使用了S ...
- Webform(Linq高级查、分页、组合查询)
一.linq高级查 1.模糊查(包含) 1 public List<User> Select(string name) 2 { 3 return con.User.Where(r => ...
- Webform(分页、组合查询)
一.分页 1.写查询方法: public List<Student> Select(int PageCount, int PageNumber) {//PageCount为每页显示条数,P ...
- Ajax 实现无刷新分页
Ajax 实现无刷新分页
- 【spring boot】14.spring boot集成mybatis,注解方式OR映射文件方式AND pagehelper分页插件【Mybatis】pagehelper分页插件分页查询无效解决方法
spring boot集成mybatis,集成使用mybatis拖沓了好久,今天终于可以补起来了. 本篇源码中,同时使用了Spring data JPA 和 Mybatis两种方式. 在使用的过程中一 ...
- oracle 的分页、截断查询
oracle 分页.截断查询 需求:从车管所的备案库中(oracle)取出数据,放到车综大数据平台(http方式) 现场情况:oracle中有三张表,CZRKXX(常住人口信息),ZDRYXX(重点人 ...
- Bitter.Core系列五:Bitter ORM NETCORE ORM 全网最粗暴简单易用高性能的 NETCore ORM 之 示例 分页聚联查询
Bitter.Core 在聚联/分页聚联查询的时候,采用原生的MSSQL, MYSQL 语句查询,做过复杂高级项目的人知道,原生的聚合查询代码执行效率更高,更快,更容易书写,开发量最少. 借助原生的M ...
- 【JPA】使用JPA实现分页和模糊查询
1.首先创建DAO层接口,实现JpaRepository和JpaSpecificationExecutor两个接口 JpaRepository<Admin, Integer> 泛型参数分别 ...
随机推荐
- Bootstrap入门(二十四)data属性
Bootstrap入门(二十四)data属性 你可以仅仅通过 data 属性 API 就能使用所有的 Bootstrap 插件,无需写一行 JavaScript 代码.这是 Bootstrap 中的一 ...
- CodeForces 721B
B. Passwords time limit per test:2 seconds memory limit per test:256 megabytes input:standard input ...
- POJ2479(dp)
Maximum sum Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 39089 Accepted: 12221 Des ...
- sublime text 添加到鼠标右键功能
安装sublime text的同学可能在安装的时候忘了设置sublime text的右键功能.那我们介绍如何添加. 我们要创建一个.reg为后缀的文件sublime_addright.reg.那么…… ...
- (四)Hololens Unity 开发之 凝视系统
学习源于官方文档 Gaze in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 HoloLens 有三大输入系统,凝视点.手势和声音 ~ 本文主要记录凝视 ...
- C# OpenFileDialog 使用
OpenFileDialog ofd = new OpenFileDialog(); //设置标题 ofd.Title = "选择文件"; //是否保存上次打开文件的位置 ofd. ...
- 自述创业史 | XMove动作感应系统(二)
XMove是沙漠君和几个死党从2010年开始开发的一套人体动作捕捉系统,软硬件全部自行开发,投入了大量的精力,历经三年,发展四个版本.文章分上下篇,本文为下篇,前三代的故事在<光荣与梦想| XM ...
- iOS 开发之Block
iOS 开发之Block 一:什么是Block.Block的作用 UI开发和网络常见功能的实现回调,按钮事件的处理方法是回调方法. 1. 按钮事件 target action 机制. 它是将一 ...
- 理解redis高可用方案
*:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...
- c++编程思想(一)--对象导言
回过头来看c++编程思想第一章,虽然只是对c++知识的一个总结,并没有实质性知识点,但是收获还是蛮多的! 下面感觉是让自己茅塞顿开的说法,虽然含义并不是很准确,但是很形象(自己的语言): 1.类描述了 ...