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> 泛型参数分别 ...
随机推荐
- Java泛型类定义,与泛型方法的定义使用
package com.srie.testjava; public class TestClassDefine<T, S extends T> { public static void m ...
- VisualGDB Makefiles
以下内容是VisualGDB官网对VisualGDB编译时获取相关编译信息的说明: When you create a new project using VisualGDB, it will gen ...
- js 计算月/周的第一天和最后一天
因为项目开发中遇到需要向后台传本周的开始和结束时间,以及上一周的起止时间,就琢磨了半天,总算写出来一套,写篇文章是为了方便自己记忆,也是分享给需要的人,水平有限,写的不好请见谅: getDateStr ...
- 作为测试人员,我是这么报BUG的
在测试人员提需求的时候,大家经常会看到,测试员和开发一言不合就上BUG.然后开发一下就炸了,屡试不爽,招招致命. 曾经看到有个段子这么写道: 不要对程序员说,你的代码有BUG. 他的第一反应是:1.你 ...
- [CSS3] 学习笔记-CSS3选择器详解(一)
1.属性选择器 在CSS3中,追加了3个属性选择器,分别为:[att*=val].[att^=val]和[att$=val],使得属性选择器有了通配符的概念. <!doctype html> ...
- 【Ionic+AngularJS 开发】之『个人日常管理』App(二)
准备工作 资源 预装工具 安装bower npm install -g bower 安装ngCordova bower install ngCordova (*由于网络获取资源的原因,后面几次建项目后 ...
- gevent拾遗
在前文已经介绍过了gevent的调度流程,本文介绍gevent一些重要的模块,包括Timeout,Event\AsynResult, Semphore, socket patch,这些模块都涉及当 ...
- 《Effective Objective-C 2.0》 读后总结
感觉自己最近提升很慢了.然后去找了一些面试题看看.发现自己自大了.在实际开发中,让我解决bug.编写功能,我有自信可以完成.但是对项目更深层的思考,我却没有.为了能进到自己的目标BAT.也为了让自己更 ...
- 一个技术汪的开源梦 —— 微信开发工具包(WeixinSDK)
由于春节的关系 WeixinSDK 这个开源项目的进展比预期推迟了大约一个月的时间,值得高兴的是到目前为止该项目的重要模块已经开发完毕. - 关于项目 该项目的背景是现在微信公众号.微信服务号乃至微 ...
- AJSX 传输数组
如果要利用ajax传输数组,或者传输多个(不知道有多少个)class的某一属性的值,例如: 要将这三个数据传入php编辑界面,图片显示有三个数据,但实际上,数据的多少是由数据库所导出的数据 决定的.如 ...