<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. JVM内存布局

    1. 概述 对于从事c和c++程序开发的开发人员来说,在内存管理领域,他们既拥有最高权力的”皇帝“又是从事最基础工作的”劳动人民“---既拥有每个对象的”所有权“,又担负着每个对象开始到终结的维护责任 ...

  2. xpinyin模块

    import xpinyin s = xpinyin.Pinyin() #一个实例化,以后了解 print(s.get_pinyin('小小军')) #get_pinyin方法,转出来的拼音,每一个汉 ...

  3. python日期加减法操作

    对日期的一些操作: 对日期的一些操作: 1 #日期转化为字符串并得到指定(或系统日期)n天后的日期--@Eillot 2 def dataTimeToString(dsNow=ReservationT ...

  4. MySQL行转列与列转行

    行转列 例如:把图1转换成图2结果展示 图1 图2 CREATE TABLE `TEST_TB_GRADE` ( `ID` ) NOT NULL AUTO_INCREMENT, `) DEFAULT ...

  5. [js]变量提升-关于条件

    条件函数变量提示于全局中函数变量提升不一样. 条件中: 函数变量提升, 只是声明(现新版本浏览器中) if(g()){ function g() { return true } console.log ...

  6. 160A

    #include <stdio.h> int main() { int n; int sum1=0, sum2=0, sum3=0; int x, y, z; scanf("%d ...

  7. 【Java】NO.83.Tool.1.GlassFish.1.001-【GlassFish 5 安装使用】-

    1.0.0 Summary Tittle:[Java]NO.83.Tool.1.GlassFish.1.001-[GlassFish 5 安装使用]- Style:EBook Series:Java ...

  8. 8 . IO类-标准IO、文件IO、stringIO

    8.1 IO类 #include <iostream> //标准IO头文件  8.2 文件输入输出流 #include <fstream> //读写文件头文件 std::fst ...

  9. ionic3 在ios9.0 系统下 会出现ReferenceError:Can't find variable:Intl 错误提示

    ionic3 框架开发app  在ios 9.0版本中 ReferenceError:Can't find variable:Intl 错误提示: 在index.html 文件中添加 <scri ...

  10. python进阶(三) 内建函数getattr工厂模式

    getattr()这个方法最主要的作用是实现反射机制.也就是说可以通过字符串获取方法实例.  传入不同的字符串,调用的方法不一样. 原型:getattr(对象,方法名) 举个栗子: pyMethod类 ...