为了美观,我还是引入了bootstrap的模态框,我引入的是自己的数据库 library中的一张表 名为:maninfo表 是一张个人信息表
表的加载我就不写了,比较简单, 大概写一下需要的按钮和html部分就可以了
1
|
<button type= "button" class= "btn btn-primary" id= "plscdz" >批量删除</button>
|
全选:
1
|
<input type= "checkbox" id= "cq" />
|
遍历出来的复选框为
1
|
<input type= "checkbox" value= "{$v[0]}" class= "cq" />
|
首先是全选按钮点击之后可以把遍历的复选框全部选中
1
2
3
4
5
|
<script type= "text/javascript" >
$( "#cq" ).click( function (){
$( ".cq" ).prop( "checked" ,$( this ).prop( "checked" ));
})
</script>
|
这里我只写了一个简单的模态框
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
<div class= "modal fade" id= "myModal11" tabindex= "-1" role= "dialog" aria-labelledby= "myModalLabel" aria-hidden= "true" >
<div class= "modal-dialog" >
<div class= "modal-content" >
<div class= "modal-header" >
<button type= "button" class= "close" data-dismiss= "modal" aria-hidden= "true" >
×
</button>
<h4 class= "modal-title" id= "myModalLabel" >
提示
</h4>
</div>
<div id= "qrnr1" class= "modal-body" >
您将删除选中的图书!
</div>
<div class= "modal-footer" >
<button id= "qxplsc" type= "button" class= "btn btn-default" data-dismiss= "modal" >取消删除</button>
<button id= "qrplsc" type= "button" class= "btn btn-primary" >确认批量删除</button>
</div>
</div><!-- /.modal-content -->
</div><!-- /.modal -->
</div>
</div>
|
这样前端的内容就完成了,这样就开始写js部分了,我全部用的是jquery
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
var chk = "" ;
var check2 = "" ;
//判断多个复选框中的某一个是否被实现
function checked(){
var count = 0;
var checkx = $( "#cq" );
if (checkx.checked)
{
check2=1; //选中全选按钮
}
else
{
check2=0; //没选中全选按钮
}
var checkArry = $( ".cq" );
for ( var i = 0; i < checkArry.length; i++)
{
if (checkArry[i].checked == true )
{
//选中的操作
count++;
}
}
if ( count == 0 )
{
chk=0; //没有选中项
}
else
{
chk=1; //有选中项
}
//alert(chk);
}
function plscdzxx()
{
//批量删除
$( "#plscdz" ).click( function (){
checked();
if (chk==1 || check2==1){ // 提交
$( '#myModal12' ).modal( 'show' );
$( "#nqrplsc" ).click( function (){ /*给确认删除按钮加事件*/
$( '#myModal12' ).modal( 'hide' );
//找选中的主键值,用循环遍历选中的主键值
var cq =$( ".cq" );
var plstr = "" ;
for ( var i=0;i<cq.length;i++)
{
if (cq.eq(i).prop( "checked" ))
{
plstr+=cq.eq(i).val()+ "','" ;
}
}
plstr= plstr.substr(0,plstr.length-3); //分隔符占3个字符,截取字符串,去掉最后的"','",这样正好匹配SQL语句
$.ajax({
async: false ,
url: "plscdz.php" ,
data:{plstr:plstr},
dataType: "TEXT" ,
type: "POST" ,
success: function (data){
if (data.trim()== "OK" )
{
alert( "删除成功" );
nload(); //在这里要重新加载一遍页面
}
else
{
alert( "删除失败" );
}
}
});
});
}
else if (chk==0)
{
// 不提交
//alert(chk);
alert( "请选择您要删除的内容" );
}
})
}
|
ajax会连接到批量删除的处理页面 ,下面就是批量删除的处理页面了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
<?php
session_start();
include ( "DBDA.class.php" );
$db = new DBDA();
if (! empty ( $_POST [ "plstr" ]))
{
$plstr = $_POST [ "plstr" ];
$sql = "delete from maninfo where id in ('{$plstr}')" ;
if ( $db ->Query( $sql ,0))
{
echo "OK" ;
}
else
{
echo "NO" ;
}
}
|
写到这儿 如果您要是自己尝试的话,可能不运行,这就需要把批量删除的方法给调一下,前面有加载的方法的话,那就直接把批量删除的方法写到加载方法里面调用就可以了
以上所述是小编给大家介绍的PHP jQuery+Ajax结合写批量删除功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
原文链接:http://www.cnblogs.com/xiaodouding/archive/2017/05/19/6868415.html