//定义一个分页的方法
public function fenye(){
//查询满足条件的总条数
$count = M("regis")->count();
//设置每页显示的条数
$length = 3;
//求出总页数
$zong_page = ceil($count/$length);
//接收一下当前页
$page = empty($_GET['page'])? 1 : $_GET['page'];
//求出偏移量
$limit = ($page-1)*$length;
//求出每页的数据
$data = M("regis")->limit($limit,$length)->select();
//拼接数组
$arr['list'] = $data;
$arr['home_page'] = 1;
$arr['last_page'] = $zong_page;

$this->assign('arr',$arr);
$this->display('show');

}

public function fy(){
//查询满足条件的总条数
$count = M("regis")->count();
//设置每页显示的条数
$length = 3;
//求出总页数
$zong_page = ceil($count/$length);
//接收一下当前页
$page = empty($_GET['page'])? 1 : $_GET['page'];
//求出偏移量
$limit = ($page-1)*$length;
//求出每页的数据
$data = M("regis")->limit($limit,$length)->select();
//拼接数组
$arr['list'] = $data;
$arr['home_page'] = 1;
$arr['last_page'] = $zong_page;

echo json_encode($arr);
}

//定义一个批量删除的方法
public function delAll(){
//接收传值
$ids = I('get.id');
//拼接条件
$where['id'] = array('in',$ids);
if(M("regis")->where($where)->delete()){
echo 1;//成功输出1
}else{
echo 2;//失败输出2
}
}

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport"
content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<table border="1">
<tr>
<th>选择</th>
<th>ID</th>
<th>用户名</th>
<th>密码</th>
<th>邮箱</th>
<th>昵称</th>
<th>注册时间</th>
</tr>

<tbody id="tb">
<foreach name="arr.list" item="v">
<tr id="{$v.id}">
<td><input type="checkbox" name="check" value="{$v.id}"></td>
<td>{$v.id}</td>
<td fd="uname">{$v.uname}</td>
<td fd="pwd">{$v.pwd}</td>
<td fd="email">{$v.email}</td>
<td fd="nickname">{$v.nickname}</td>
<td>{$v.add_time|date="Y-m-d H:i:s",###}</td>
</tr>
</foreach>
</tbody>
</table>
<!--当前页-->
<input type="hidden" name="current_page" id="current_page" value="{$arr.home_page}">
<!--尾页-->
<input type="hidden" name="last_page" id="last_page" value="{$arr.last_page}">

<a href="javascript:void(0);" class="page">首页</a>
<a href="javascript:void(0);" class="page">上一页</a>
<a href="javascript:void(0);" class="page">下一页</a>
<a href="javascript:void(0);" class="page">尾页</a>
<button id="del">删除</button>

<script src="__PUBLIC__/js/jquery.js"></script>
<script>
//给删除按钮一个点击事件
$("#del").click(function(){
//定义一个空的数组
var arr = [];
//定位一下选中的多选框
$("[type=checkbox]:checked").each(function(i){
arr[i] = $(this).val();
});

var ids = arr.toString();

//发起请求
$.get("{:U('Exam/delAll')}?id="+ids,function(data){
if(data==1){
//成功
for(var i=0;i<arr.length;i++){
$("#"+arr[i]).remove();
}
}else{
//失败
alert('删除失败');
return false;
}
});
});

$(".page").click(function(){
//获取当前页
var current_page = $("#current_page").val();
//获取一下最后一页
var last_page = $("#last_page").val();

//获取a标签的值
var a_val = $(this).text();

//判断页数
if(a_val=='首页'){
var page = 1;
}else if(a_val=='上一页'){
var page = parseInt(current_page)-1 <= 1 ? 1 : parseInt(current_page)-1;
}else if(a_val == '下一页'){
var page = parseInt(current_page)+1 >= last_page ? last_page : parseInt(current_page)+1;
}else{
var page = last_page;
}

//请求
$.get("{:U('Exam/fy')}?page="+page,function(data){
//把拿到的数据转化成真正的json
var res = JSON.parse(data);
var arr = res.list;
var str = '';
// console.log(arr);
for(var i=0;i<arr.length;i++){
str += "<tr>";
str += "<td><input type='checkbox' name='check' value='"+arr[i].id+"'></td>";
str += "<td>"+arr[i].id+"</td>";
str += "<td>"+arr[i].uname+"</td>";
str += "<td>"+arr[i].pwd+"</td>";
str += "<td>"+arr[i].email+"</td>";
str += "<td>"+arr[i].nickname+"</td>";
str += "<td>"+arr[i].add_time+"</td>";
str +="</tr>";
}

$("#tb").html(str);
$("#current_page").val(page);

});
});

// //先加载页面、再加载jq部分
// $(document).ready(function () {
// //给每一个td一个双击事件
// $("td").dblclick(function () {
// //取td这个标签的内容
// var td_val = $(this).text();
// //获取要修改的数据库字段
// var td_attr_val = $(this).attr("fd");

// //判断不支持的内容部分
// if(td_attr_val==undefined){
// alert('不支持修改这个内容');
// return false;
// }

// //继续,支持的了
// //获取自增id
// var tr_val = $(this).parents().attr("id");

// //想办法变成文本框
// $(this).html("<input type='text' id='cli"+td_val+"' value='"+td_val+"'>");

// //文本框失效事件
// $("#cli"+td_val).blur(function () {
// //获取新值
// var new_val = $(this).val();

// //请求后台
// $.post("{:U('Exam/jdjg')}",
// {
// //自增id
// id:tr_val,
// //字段名
// fd_name:td_attr_val,
// //字段的最新值
// new_val:new_val
// },
// function(data){
// //直接替换文本框
// $("#cli"+td_val).parents("td").html(new_val);
// });
// });

// });
// });
</script>
</body>
</html>

jquery实现分页+单删批删的更多相关文章

  1. ajax全选、全不选、反选、单删/批删

    <meta charset="utf-8"> <?php //链接数据库 $link = mysqli_connect('127.0.0.1','root','r ...

  2. jquery中的全选、反选、全不选和单删、批删

    HTML页面 <!doctype html><html lang="en"><head> <meta charset="UTF- ...

  3. laravel 7 H-ui模板ajax批删

    1,HTML页面写一个button按钮 <a href="javascript:;" onclick="deleteAll()" class=" ...

  4. 雷林鹏分享:jQuery EasyUI 表单 - 过滤下拉数据网格

    jQuery EasyUI 表单 - 过滤下拉数据网格 下拉数据网格(Combogrid)组件和下拉框(Combobox)组件的共同点是,除了都具有下拉面板以外,它们都是基于数据网格(Datagrid ...

  5. 雷林鹏分享:jQuery EasyUI 表单 - 创建异步提交表单

    jQuery EasyUI 表单 - 创建异步提交表单 本教程向您展示如何通过 easyui 提交一个表单(Form).我们创建一个带有 name.email 和 phone 字段的表单.通过使用 e ...

  6. 雷林鹏分享:jQuery EasyUI 表单 - 创建树形下拉框

    jQuery EasyUI 表单 - 创建树形下拉框 树形下拉框(ComboTree)是一个带有下列树形结构(Tree)的下拉框(ComboBox).它可以作为一个表单字段进行使用,可以提交给远程服务 ...

  7. 雷林鹏分享:jQuery EasyUI 表单 - 表单验证

    jQuery EasyUI 表单 - 表单验证 本教程将向您展示如何验证一个表单.easyui 框架提供一个 validatebox 插件来验证一个表单.在本教程中,我们将创建一个联系表单,并应用 v ...

  8. 雷林鹏分享:jQuery EasyUI 表单 - 格式化下拉框

    jQuery EasyUI 表单 - 格式化下拉框 本教程向您展示如何创建一个简单的下拉框(Combobox),让它在下拉框中显示图片项.您可以在下拉框(combobox)上使用 formatter ...

  9. jQuery Pagination分页插件

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. CentOS安装redis.tar.gz

    1. # cd /usr/local/src 2. # tar -zxvf redis-3.0.6.tar.gz 3. # cd redis-3.0.6 4.# make 5.#  make PREF ...

  2. CentOS之RPM

    yum工具比RPM工具好用,所以直接介绍yum工具来管理RPM包. yum list |head -n 20 列出所有RPM资源. yum search vim  搜索RPM包vim yum inst ...

  3. Google C++命令规范

    最近发现自己在开发程序的过程中,经常会将好几种命名规范进行混用,这样使得程序的可读性下降,于是乎依然决定学习并使用Google的命令规范,并且坚持使用. copy from https://www.c ...

  4. MapReduce Demo

    功能:统计公司员工一个月内手机上网上行流量.下行流量及总流量. 测试数据如下: 13612345678     6000    1000 13612345678     2000    3000 13 ...

  5. Java 6- Java 运算符

    计算机的最基本用途之一就是执行数学运算,作为一门计算机语言,Java也提供了一套丰富的运算符来操纵变量.我们可以把运算符分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 其他运 ...

  6. CS229 6.4 Neurons Networks Autoencoders and Sparsity

    BP算法是适合监督学习的,因为要计算损失函数,计算时y值又是必不可少的,现在假设有一系列的无标签train data:  ,其中 ,autoencoders是一种无监督学习算法,它使用了本身作为标签以 ...

  7. jquery鼠标放上去显示悬浮层即弹出定位的div层

    <div><a id="a1" onmouseover="javascript:show('a1','div1');" onmouseout= ...

  8. js原生轮播

    js原生轮播 今天用js做了轮播图,做的不怎么好,希望大家能够看懂. 效果: 1.鼠标放在轮播图上自动停止 2.鼠标离开轮播图自动播放 3.鼠标点击轮播图上的小圆点跳转到相应的图上. 代码: < ...

  9. CentOS7离线安装Ambari与HDP

    安装步骤总体说明 1.安装以前需要先规划服务器,一台主机多台从机.主从需要设置时间同步和免密. 2.建立离线源,因在线安装速度很慢,所以需要建立离线源. 3.在主机上安装Ambari,进入系统后,挂接 ...

  10. How to CORS enable ArcGIS Server 10.2.1 to Access REST Services without Using proxy.ashx

    http://gis.stackexchange.com/questions/86206/how-to-cors-enable-arcgis-server-10-2-1-to-access-rest- ...