<meta charset="utf-8">
<?php
//链接数据库
$link = mysqli_connect('127.0.0.1','root','root','mone');
//设置字符集
mysqli_query($link,'set names utf8'); //接收当前页
$page = empty($_GET['page'])?1:$_GET['page'];
//求出总条数
$sql = "select * from user";
$res = mysqli_query($link,$sql);
$count = mysqli_num_rows($res);
//每页显示多少条
$length = 3;
//求出总页数
$num_page = ceil($count/$length);
//偏移量
$limit = ($page-1)*$length;
//查询
$sql2 = "select * from user limit $limit,$length";
$res2 = mysqli_query($link,$sql2);
while($a=mysqli_fetch_assoc($res2)){
$data['data'][] = $a;
} $data['home_page'] = 1;
$data['prev_page'] = $page-1<1?1:$page-1;
$data['next_page'] = $page+1>$num_page?$num_page:$page+1;
$data['last_page'] = $num_page; ?>
<table>
<tr>
<th>选择</th>
<th>ID</th>
<th>用户名</th>
<th>密码</th>
<th>性别</th>
<th>年龄</th>
<th>班级</th>
<th>手机</th>
<th>编辑</th>
</tr>
<div id="main">
<?php foreach($data['data'] as $k=>$v){ ?>
<tr id="<?php echo $v['user_id'];?>">
<td><input type="checkbox" name="check" value="<?php echo $v['user_id'];?>"></td>
<td><?php echo $v['user_id'];?></td>
<td><?php echo $v['username'];?></td>
<td><?php echo $v['pwd'];?></td>
<td><?php echo $v['sex'];?></td>
<td><?php echo $v['age'];?></td>
<td><?php echo $v['class_name'];?></td>
<td><?php echo $v['phone'];?></td>
<td>
<a href="">修改</a>
</td>
</tr>
<?php } ?>
</div>
</table> <button onclick="fun1()">全选</button>
<button onclick="fun2()">全不选</button>
<button onclick="fun3()">反选</button>
<button onclick="fun4()">单删/批删</button>
<script> function fun1(){
var check = document.getElementsByName('check');
for(var i=0;i<check.length;i++){
if(check[i].checked==false){
check[i].checked=true;
}
}
} function fun2(){
var check = document.getElementsByName('check');
for(var i=0;i<check.length;i++){
if(check[i].checked==true){
check[i].checked=false;
}
}
} function fun3(){
var check = document.getElementsByName('check');
for(var i=0;i<check.length;i++){
if(check[i].checked==true){
check[i].checked=false;
}else{
check[i].checked=true;
}
}
} function fun4(){
var arr = document.getElementsByName('check');
var ar = [];
for(var i=0;i<arr.length;i++){
if(arr[i].checked==true){
ar.push(arr[i].value);
}
} var id = ar.toLocaleString();
if(id==''){
alert('请先选择一项');
return false;
}else{
//ajax请求
var ajax = new XMLHttpRequest();
ajax.open("get","delete.php?id="+id);
ajax.send();
ajax.onreadystatechange=function(){
if(ajax.readyState==4 && ajax.status==200){
//alert(ajax.responseText);
//成功
if(ajax.responseText==1){ for(var i=0;i<ar.length;i++){
var tr=document.getElementById(ar[i]);
tr.remove();
} }
}
}
}
}
</script>

delete.php

<?php
//接收传值
$id = $_GET['id'];
//链接数据库
$link = mysqli_connect('127.0.0.1','root','root','mone');
//设置字符集
mysqli_query($link,'set names utf8');
//拼接sql
$sql = "DELETE FROM user WHERE user_id in ($id)";
if(mysqli_query($link,$sql)){
echo 1;
}else{
echo 2;
}

ajax全选、全不选、反选、单删/批删的更多相关文章

  1. jquery实现分页+单删批删

    //定义一个分页的方法 public function fenye(){ //查询满足条件的总条数 $count = M("regis")->count(); //设置每页显 ...

  2. springMvc接收ajax数组参数,以及jquery复选框选中、反选、全选、全不选

    一.复选框选中.反选.全选.全不选 html代码: <input type='checkbox' name='menuCheckBox' value='10' >苹果 <input ...

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

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

  4. js正则、js全选、反选、全不选、ajax批删

    <button onclick="fun1()">全选</button><button onclick="fun2()">全 ...

  5. jquery 全选 全不选 反选

    1.概述 在项目中经常遇到列表中对复选框进行勾选操作,全选...反选.. 2. example <html> <body> <form id="test-for ...

  6. 利用jQuery实现CheckBox全选/全不选/反选

    转自:http://www.cnblogs.com/linjiqin/p/3148259.html jQuery有些版本中实现CheckBox全选/全不选/反选会有bug,经测试jquery-1.3. ...

  7. jquery的全选/全不选/反选以及attr添加checked属性失败的解决办法

    如下图: <head> <title></title> <style type="text/css"> div { border: ...

  8. Jq 遍历 全选 全不选 反选

    //全选 全不选 $('#checkAll').click(function () { //判断是否被选中 var bischecked = $('#checkAll').is(':checked') ...

  9. JS实现全选、不选、反选

    思路:1.获取元素.2.用for循环历遍数组,把checkbox的checked设置为true即实现全选,把checkbox的checked设置为false即实现不选.3.通过if判断,如果check ...

随机推荐

  1. java web实现在cookie中保存用户名和密码,用户自动登入

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  2. Weex小笔记(自己理解,有错请指正)

    在Eros中,做的内容是封装了一些常用的框架,并且优化开发流程为将前端Vue文件打包出资源文件导入项目工程中(本地加载模式,需要注册文件.验证文件),然后原生移动端通过OC写module(功能模块类) ...

  3. da5_random模块

    import random #标准模块,用来取随机数 print(random.randint(1,100)) #随机取一个整数,顾头顾尾 print(random.uniform(1,900)) # ...

  4. eclipse maven引入第三方jar包后如何下载源代码(sources)

    1. 在eclipse windows -> properties->maven 选项,然后查看右侧 菜单来中 找到 Download Artifact Sources  选项勾选:如果想 ...

  5. Redis入门到高可用(十五)—— GEO

    一.简介 二.应用场景 三.API 1.geoadd 2.geopos 3.geodist 4.georadius 四.相关说明

  6. Hive为什么要启用Metastore?

    转载来自: https://blog.csdn.net/qq_40990732/article/details/80914873 https://blog.csdn.net/tp15868352616 ...

  7. python数据结构-如何快速找到多个字典中的公共键

    如何快速找到多个字典中的公共键 问题举例 统计每轮都进球的球员: 第1轮{‘tom’:1, 'meixi':2} 第2轮{‘coco’:3, 'meixi':4, 'marton':2} 第3轮{'c ...

  8. 家庭记账本之微信小程序(三)

    继上篇注册阶段后,经过查阅资料学习后,以下介绍开发阶段 1.登录微信公众平台就能在菜单“开发”---“基本配置”中看到小程序的AppID了. 小程序的 AppID 相当于小程序平台的一个身份证,后续你 ...

  9. Python基础(八) yaml在python中的使用

    yaml 通常用来存储数据,类似于json YAML 简介 YAML(Yet Another Markup Language),一种直观的能够被电脑识别的数据序列化格式,是一个可读性高并且容易被人类阅 ...

  10. 游戏客户端Session的统一管理

    看本系统文章需要些C语言.数据结构和网络基础知识! 说明:由于游戏服务器端会有成千上万的客户端进行连接请求,所以要求我们需要做一些简单的会话管理!如下图 1.简单说明 进行统一的分配和管理,就需要我们 ...