bootstrap结合php,基于BootStrap与PHP相结合的带有搜索框的ajax无刷新分页案例(支持三种搜索)...

废话不多说,直接上代码:

前台代码:

记得先引入bootstrap:http://v3.bootcss.com/dist/css/bootstrap.min.css

index.php

基于BootStrap与PHP相结合的带有搜索框的ajax无刷新分页案例(支持三种搜索)

基于BootStrap与PHP相结合的带有搜索框的ajax无刷新分页案例(支持三种搜索)

在线搜索

搜索

ID名字性别语言

$(document).ready(function() {

loadingData();

var totalPages = 0;

//页面加载数据

})

function loadingData(){

var currentPage = $('#currentPage').val();//当前页码

var totalPages = $('#totalPages').val();//总页码

var search_content = $('#search_content').val();//搜索内容

content = search_content ? search_content : '';

$.ajax({

url: 'test.php',

type:'POST',

data:{'currentPage':currentPage,'content':content},

dataType: 'json',

success:function(data){

var info = data.datas,total = data.total;

//调用ajaxSuccess处理函数

ajaxSuccess(total,currentPage,info);

}

})

//点击按钮搜索

$("#search").click(function(){

search();

});

//边输入边搜索

$("#content").keyup(function(){

search();

});

//回车键搜索(为了避免表单提交,已经禁止上面的表单提交了)

$(document).keydown(function() {

if (event.keyCode == 13){//表示按的是回车键

search();

}

});

//PS:边输入边搜索和回车键搜索最好分开用,以免引起紊乱

}

//给分页列表绑定事件的方法

function bindingEvent()

{

$("#first").click(function(){

if($("#currentPage").val() != 1 && $('#totalPages').val() != 0){//第一页点击时无效

$("#currentPage").val(1);//即第一页

//加载数据

loadingData();

}

})

$("#last").click(function(){//最后一页点击时无效

if($("#currentPage").val() != $('#totalPages').val() && $('#totalPages').val() != 0){

var total = $('#totalPages').val();//把总页数存到隐藏框里

$("#currentPage").val(total);

//加载数据

loadingData();

}

})

$("#down").click(function(){

if($('#totalPages').val() != 0){//总页数为0时,不能点击无效,主要是考虑搜索没数据时的情况

var n = $("#currentPage").val();

if(n>1)

{

n--;

}

else

{

n=1;

}

$("#currentPage").val(n);

}

//加载数据

loadingData();

})

$("#up").click(function(){

if($('#totalPages').val() != 0){//总页数为0时,不能点击无效,主要是考虑搜索没数据时的情况

var n = $("#currentPage").val();

if(n

{

n++;

}

else

{

n=totalPages;

}

$("#currentPage").val(n);

//加载数据

loadingData();

}

})

$(".center").click(function(){

if($('#totalPages').val() != 0){//总页数为0时,不能点击无效,主要是考虑搜索没数据时的情况

var n = $(this).text();

if($("#currentPage").val() != n){

$("#currentPage").val(n);//中间的页码,点击哪一页就去那一页

//加载数据

loadingData();

}

}

})

}

//把ajax相同部分封装成函数调用

function ajaxSuccess(total,currentPage,info){

var html = ''

for(var i = 0;i < info.length;i++){

html += '

';

html += '

'+ info[i].id +'';

html += '

'+ info[i].name +'';

html += '

'+ info[i].sex+'';

html += '

'+ info[i].language +'';

html += '

';

}

$('tbody').html(html);

var pages = Math.ceil(total/3);

totalPages = pages;

$('#totalPages').val(totalPages);//把总页数存到隐藏框里

var dangqian = currentPage ? parseInt(currentPage) : 1; //当前页数

$('#currentPage').val(dangqian);//把当前页存放到隐藏框

var j = 0;

var s = '

if(dangqian != 1){

s += '

上一页';

}

for(var i = dangqian - 2;i <= dangqian + 2;i++)

{

if(j == 5){//页码列表只显示3列,即只显示1、2、3或2、3、4这样的三列,以此类推。

break;

}else{

j++;

}

if(i>0 && i <= pages)

{

if(dangqian==i)

{

s += '

'+ i +'';

}

else

{

s += '

'+ i +'';

}

}

}

if(dangqian != totalPages){

s += '

下一页';

}

s += '

末页';

s += '

'+ totalPages +''+ total +'';

$(".list-div").html(s);

//给分页列表绑定事件

bindingEvent();

}

//搜索封装成函数

function search(){

var content = $('#content').val();

var currentPage = 1;//搜索时默认就是第一页

$('#search_content').val(content);//把搜索内容写到隐藏域

$.ajax({

url:"test.php",

data:{currentPage:currentPage,content:content},

type:"POST",

dataType:"JSON",

success: function(data){

var info = data.datas,total = data.total,html = '';

if(!info){

$('tbody').empty();

$('#tip').show().find('td').html('

暂无数据!
');

$('#totalPages').val(0);//此时的总页数为0

$(".list-div").html('

  • 首页
  • 1
  • 下一页
  • 末页
  • 10
');

return false;

}

$('#tip').hide();

//调用ajaxSuccess处理函数

ajaxSuccess(total,currentPage,info);

}

})

}

style.css

.page {

text-align: center;

margin: 10px 0 -20px 0;

}

a:hover{

cursor: pointer;

}

tr td{

text-align: center;

}

.page .current {

background: #FF0403;

color: white;

}

后台代码:

test.php

header("Content-Type:text/html;charset=utf-8");

error_reporting(0);

//连接数据库

mysql_connect('localhost','root','');

mysql_select_db('ajax');

mysql_query('set names utf8');

//查询数据库

$page = $_POST['currentPage'] ? intval($_POST['currentPage']) : 1;//默认是第一页

if(!empty($_POST["content"])){//获取提交的关键字

$content = $_POST["content"];

$params = " name like '%{$content}%' or language like '%{$content}%' or sex like '%{$content}%' or id like '%{$content}%' ";//拼接查询条件

$where = "where {$params}";

}else{

$where = '';

}

$perPageNums = 3;//每页显示条数

$offset = ($page - 1) * $perPageNums;

$sql1 = "select a.* from ajax_fenye a $where limit $offset,$perPageNums";

$sql2 = "select count(*) count from ajax_fenye $where";

$resource1 = mysql_query($sql1);

$resource2 = mysql_query($sql2);

$count = mysql_fetch_assoc($resource2);

while ($row = mysql_fetch_assoc($resource1)) {

$result[] = $row;

}

echo json_encode(array('datas' => $result,'total' => $count['count']));

?>

新建一张数据表:

SQL语句如下

/*

Navicat MySQL Data Transfer

Source Server         : localhost_3306

Source Server Version : 50612

Source Host           : localhost:3306

Source Database       : ajax

Target Server Type    : MYSQL

Target Server Version : 50612

File Encoding         : 65001

Date: 2017-06-24 15:54:36

*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------

-- Table structure for ajax_fenye

-- ----------------------------

DROP TABLE IF EXISTS `ajax_fenye`;

CREATE TABLE `ajax_fenye` (

`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键id',

`name` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '名字',

`language` varchar(50) CHARACTER SET utf8 NOT NULL COMMENT '语言',

`sex` varchar(5) CHARACTER SET utf8 NOT NULL COMMENT '性别',

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=latin1;

-- ----------------------------

-- Records of ajax_fenye

-- ----------------------------

INSERT INTO `ajax_fenye` VALUES ('1', '张三', 'PHP', '男');

INSERT INTO `ajax_fenye` VALUES ('2', '李四', 'Java', '男');

INSERT INTO `ajax_fenye` VALUES ('3', '王五', 'C++', '男');

INSERT INTO `ajax_fenye` VALUES ('4', '马六', 'Swift', '男');

INSERT INTO `ajax_fenye` VALUES ('5', '林七', 'Go', '女');

INSERT INTO `ajax_fenye` VALUES ('6', '郑八', 'Python', '男');

INSERT INTO `ajax_fenye` VALUES ('7', '欧九', 'C', '女');

INSERT INTO `ajax_fenye` VALUES ('8', '叶十', 'JavaScript', '男');

INSERT INTO `ajax_fenye` VALUES ('9', '金人', 'PHP', '男');

INSERT INTO `ajax_fenye` VALUES ('10', '魏伟', 'PHP', '男');

INSERT INTO `ajax_fenye` VALUES ('11', '白厚', 'PHP', '男');

效果截图如下:

6ed3006cf062c9c4e3bc117c00717b3b.png

b025517fd475fdece2888b1c1bba543b.png

cc3c093ee6cc41cd70b07acc00e8900a.png

PS:欢迎大家来加群来探讨:135499297

php+bootstrap+jqueryAjax实现增删改查 首先导入js包和bootstrap包 吧表格布局做好 &lt;div class="container" style="padding-top: 40px;"&gt; &lt;div class="form-group"&gt; &lt;div class="row"&gt; &lt;div class="col-md-8"& 阅读详情

相关推荐

PHP+MySQL+Bootstrap 美食主题博客项目

一:技术栈介绍 主题:美食博客 前端:html,js,css, bootstrap,jq 后端:php mvc 数据库:mysql 本项目美食部分接口调用地址:美食接口文档 本项目实时更新github 地址:github地址 二:实现功能总结 登录,注册,退出登录,验证码。 API接口调用:菜谱推荐,菜谱分类,菜谱分类详情,菜谱详情。 个人信息展示:头像,座右铭修改。 个人动态发布展示。 动态...

路漫漫其修远兮,吾将上下而求索。 5790

php 调用bootstrap,如何在HTML页面中使用bootstrap框架(图文详解)

前端开发框架有很多,比如:layui,MUI,bootstrap等,那你会用bootstrap框架写页面吗?这篇文章就和大家讲讲bootstrap框架的使用方法,有一定的参考价值,感兴趣的朋友可以看看。Bootstrap 是基于 HTML、CSS 和 JavaScript 的一款前端框架,其可以用来快速开发 Web 应用程序和网站,且所有的主流浏览器都支持 Bootstrap。因为该框架几乎包含了...

weixin_33266645的博客 1517

PHP+Ajax+bootstrap+dataTables无刷新分页表格插件

PHP+Ajax+bootstrap+dataTables无刷新分页表格插件

PHP+Bootstrap+原生Ajax+MySQL实现前后端交互(中)

前后端交互项目修改功能思路修改功能的js代码修改功能的PHP代码实现效果删除功能思路实现删除功能的js代码实现删除功能的PHP代码实现效果 在上个文章中介绍了如何使用bootstrap进行布局,使用PHP操作数据库,通过ajax实现数据的查询和添加功能,在这篇文章中,继续实现ajax交互项目的修改和删除操作。 修改功能 思路 通过点击页面上的修改按钮,将会弹出模态框,并将这一行的信息对应显示在模态...

HJay_Chou的博客 1817

基于BootStrapPHP相结合带有搜索框ajax刷新分页案例(支持三种搜索)

废话不多说,直接上代码: 前台代码: 记得先引入bootstrap:http://v3.bootcss.com/dist/css/bootstrap.min.css index.php         基于BootStrapPHP相结合带有搜索框ajax刷新分页案例(支持三种搜索)     http://v3.bootcss.com/dist/css/bootst

森森 3660

php ajax 分页插件,Bootstrap Paginator分页插件ajax相结合实现动态无刷新分页效果...

Bootstrap Paginator分页插件下载地址:DownloadVisit Project in GitHub1.这是需要分页的页面放的 js函数:function paging(page){$.ajax({type: "GET",url: "${ctx}/api/v1/user/1/"+(page-1)+"/5",dataType:"json",success: function(msg...

weixin_29585933的博客 125

ajax php 分页插件,Bootstrap Paginator分页插件ajax相结合实现动态无刷新分页效果...

Bootstrap Paginator分页插件下载地址:1.这是需要分页的页面放的 js函数:查询出来数据)}});$.ajax({type: "GET",url:"${ctx}/api/v1/user/count/1",success:function(msg){var pages = Math.ceil(msg.data/5);//这里data里面有数据总量var element = $('#...

weixin_35235724的博客 95

bootstrap php ajax,ThinkPHP 整合Bootstrap Ajax分页样式

ThinkPHP Ajax分页代码publicfunction index(){$where=array();$name = I('name');if(!empty($name)){$where['name']= array('like','%'.(string)$name.'%');}$Role=M('Role');$count= $Role->where($where)->coun...

weixin_35190276的博客 197

使用BootstrapPHPAJAX构建联系表单教程

使用BootstrapPHPAJAX构建联系表单教程 本教程将指导您如何设置并理解从Tuts+获取的名为“Building a Bootstrap Contact Form Using PHP and AJAX”的开源项目。此项目结合了前端流行的Bootstrap框架、后台处理脚本PHP以及无刷新提交技术AJAX,以创建一个高效的联系方式提交表单。 1. 项目目录结构及介绍 项目基于GitHu...

gitblog_00806的博客 788

bootstrap分页插件php,bootstrap-table分页插件使用

bootstrap-table介绍bootstrap-table 是一个轻量级的table插件,使用AJAX获取JSON格式的数据,其分页和数据填充很方便,支持国际化。下载地址https://github.com/wenzhixin/bootstrap-table/archive/1.11.0.zip使用方式引入css和js2. table数据填充bootstrap-table获取数据有两种方式,...

weixin_39715513的博客 234

构建Bootstrap联系表单:使用PHPAJAX

构建Bootstrap联系表单:使用PHPAJAX 项目介绍 本项目是一个基于Bootstrap框架的联系表单,通过PHPAJAX技术实现表单的异步提交和邮件发送功能。项目源码托管在GitHub上,地址为:tutsplus/building-a-bootstrap-contact-form-using-php-and-ajax。 项目快速启动 环境要求 Web服务器(如Apache) PHP...

gitblog_00249的博客 1029

ajax分页查询

分页查询是在日常生活中经常遇到的,例如博客分页、淘宝关键字分页查询等,ajax分页相对复杂些,但是给用户的体验却是非常棒的,它可以实现不用刷新页面而进行分页。 我用的是minzu表: 首先,引入 jquery文件和bootstrap文件,因为要用bootstrap分页做样式 <script src="jquery-3.2.0.min.js"></scr...

aodc6537的博客 268

Ajax实现无刷新分页

创建一个home.html文件,使用Ajax获取服务器端的数据 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 商品列表 //通过页面加载事件实现分页数据获取 f

果然朝辉的博客 515

bootstrap结合php,Bootstrap 结合 PHP ,做简单的登录以及注册界面及功能

登录实现html代码管理员账号(11位手机号码)密码登录css:.container {margin-top: 150px;}php:function login () {if (empty($_post['administrator'])) {$globals['error_msg'] = '请输入管理员账号';return;}if (strlen($_post['administrator']...

weixin_39820177的博客 371

bootstrap弹窗+php+ajax

1,html   data-id --id   , data-memo 描述   {foreach $lists as $k =&gt; $list} &lt;td align="center"&gt;                           &lt;button type="button" class="btn btn-info js_btn_edit" data-id="{$...

gaokcl的博客 733

【网络安全零基础入门必知必会】PHP+Bootstrap实现表单校验功能、PHP+MYSQL实现简单的用户注册登录功能(03)

这是大白给粉丝盆友们整理的网络安全入门到精通系列第八章PHP入门介绍。本阶段主要讲解PHP+Bootstrap实现表单校验功能、PHP+MYSQL实现简单的用户注册登录功能。

Libra1313的博客 1087

bootstrap php交互,bootstrap.php

include 'vendor/autoload.php';$container = new \League\Container\Container();$container->share('response', Zend\Diactoros\Response::class);$container->share('request', function () {return Zend\D...

weixin_32848617的博客 404

php ajax刷新分页源码,ajax实现无刷新分页(php)

投票结果function GetXmlHttpObject(){var xmlHttp=null;try{// Firefox, Opera 8.0+, SafarixmlHttp=new XMLHttpRequest();}catch (e){// Internet Explorertry{xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");}catch (e...

weixin_30052271的博客 164
上一篇: php中多维数组,php中的多维数组
下一篇: matlab hfss文件导入,matlab_HFSS_hfss
许相荣
博客等级 码龄9年 30粉丝 241原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值