以Nation表为例,将Nation表显示在页面上,每一行数据前面加上复选框,后面加上查看详情,点击以弹窗形式显示每一行的数据,并且在表格最后一行加上全选复选框,点击选中全部数据,后面跟一个批量删除按钮,点击删除选中项,如图:

主页面:需要用到弹窗插件,将js与css文件加载过来

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="../jquery-1.11.2.min.js"></script>
<script src="../tanchuang/tanchuang.js"></script> <style type="text/css">
.xq{ width:80px; height:30px; background-color:#06C; line-height:30px; color:#FFF;}
.xq:hover{ cursor:pointer; background-color:#F60; color:#FFF;}
</style>
<link href="../tanchuang/tanchuang.css" rel="stylesheet" type="text/css" />
</head> <body>
<h1>Nation表</h1>
<table id="biao" width="800px" border="1" cellpadding="0" cellspacing="0"> </table> </body>
</html>
<script type="text/javascript">
$(document).ready(function(e) { Show();
function Show() //将各个事件放到一个方法里,这样调用这一个方法就可以加上各个事件了
{
$.ajax({
async:false,
//url:"testchuli.php",
url:"ChuLi1.php",
data:{type:0}, //将三个处理页面放入一个页面,需要传一个参数type
type:"POST",
dataType:"JSON",
success: function(data){
var str= "<tr height='30px'><td>民族代号</td><td>民族名称</td><td>查看详情</td></tr>";
for(var k in data)
{
str+="<tr><td><input type='checkbox' value='"+data[k][0]+"' class='ck' />"+data[k][0]+"</td><td>"+data[k][1]+"</td><td><div class='xq' bs='"+data[k][0]+"'>查看详情</div></td></tr>";
}
str+="<tr height='30px'><td colspan='3'><input type='checkbox' id='qx' /> 全选 <input type='button' id='btn' value='批量删除' /></td></tr>";
$("#biao").html(str);
}
}); //查看详情
$(".xq").click(function(){
//取主键值
var code = $(this).attr("bs");
$.ajax({
//url:"xqchuli.php",
url:"ChuLi1.php",
data:{code:code,type:1},
type:"POST",
dataType:"TEXT",
success: function(data){ var lie =data.split("^");
var html = "<div>民族代号:"+lie[0]+"</div><div>民族名称:"+lie[1]+"</div>"; var win = new Window({ width : 400, //宽度
height : 500, //高度
title : '详细信息', //标题
content : html, //内容
isMask : true, //是否遮罩
buttons : "", //按钮
isDrag:true, //是否移动
});
}
});
}) //全选
$("#qx").click(function(){
//全选按钮选中状态,索引0取document对象
var xz = $(this)[0].checked;
//操作所有复选框的选中状态
var ck =$(".ck");
ck.prop("checked",xz);
}) //批量删除
$("#btn").click(function(){
//找选中的主键值,用循环遍历选中的主键值
var ck =$(".ck");
var str ="";
for(var i=0;i<ck.length;i++)
{
if(ck.eq(i).prop("checked"))
{
str+=ck.eq(i).val()+"','";
}
}
str= str.substr(0,str.length-3); //分隔符占3个字符,截取字符串,去掉最后的"','",这样正好匹配SQL语句 $.ajax({
//url:"Delete.php",
url:"ChuLi1.php",
data:{str:str,type:2},
type:"POST",
dataType:"TEXT",
success: function(data){
alert(data); Show();
}
});
})
}
}); </script>

将显示数据,查看详情与批量删除三个处理页面合成一个页面,只需传一个参数type:

<?php
include("../DB.class.php");
$db = new DB();
$type = $_POST["type"];
//用switch case比if else清晰
switch($type)
{
case 0:
$sql ="select * from Nation";
echo $db->JsonQuery($sql);
break;
case 1:
$code = $_POST["code"];
$sql = "select * from Nation where Code = '{$code}'";
echo $db->StrQuery($sql);
break;
case 2:
if(!empty($_POST["str"]))
{
$str = $_POST["str"];
$sql = "delete from Nation where Code in ('{$str}')";
//echo $sql; 输出SQL语句看是否正确
if($db->Query($sql,1))
{
echo "删除成功!";
}
else
{
echo "删除失败!";
}
}
else
{
echo "请选择要删除的项!";
}
break;
default:
echo "";
}

AJAX实现弹窗显示详情,全选和批量删除的更多相关文章

  1. php--jquery操作全选、批量删除、加减行

  2. MVC3学习:利用mvc3+ajax实现全选和批量删除

    本例数据库操作使用EF code first; 先利用mvc自带的模板,先生成一个list视图,然后再手动添加复选框和删除按钮 <table> <tr> @*在标题行添加一个全 ...

  3. 关于jquery全选反选 批量删除的一点心得

    废话不多说直接上代码: 下面是jsp页面的html代码: <table id="contentTable" class=""> <thead& ...

  4. angularJS 全选反选批量删除

    <th> <label for="flag"> <span ng-hide="master">全选</span> ...

  5. jquery操作全选、批量删除、加减行

    --------------------------------------------------------------------------------------- html静态页面 --- ...

  6. 作业:汽车查询--弹窗显示详情,批量删除 ajax做法(0521)

    作业:显示以下界面: 作业要求: 1.查看详细信息,以弹窗的形式显示,使用ajax2.批量删除 一.主页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHT ...

  7. 作业:汽车查询--弹窗显示详情,批量删除 php做法(0521)

    作业:显示以下界面: 作业要求: 1.查看详细信息,以弹窗的形式显示,使用ajax2.批量删除 一.主页面: <!DOCTYPE html PUBLIC "-//W3C//DTD XH ...

  8. JavaScript-checkbox标签-隐藏、显示、全选、取消和反选等操作

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. Ado.net[登录,增删改查,Get传值,全选,不选,批量删除,批量更新]

    [虽然说,开发的时候,我们可以使用各种框架,ado.net作为底层的东西,作为一个合格的程序员,在出问题的时候我们还是要知道如何调试] 一.增删改查 cmd.ExecuteReader();执行查询, ...

随机推荐

  1. objc_setAssociatedObject 使用(转)

    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 ...

  2. hadoop工作相关

    网站点击流日志分析,客户画像,推荐系统,bi系统

  3. va_list可变参数

    可变参数函数实现 va_list,va_start,va_arg,va_end va可变参数意思,variable-argument. 1. 头文件及实现 linux中定义在gcc头文件中,stdar ...

  4. Xshell配色方案(Solarized Dark)

    将以下内容复制并保存到文件中,文件名以xc为后缀,如:Solarized Dark.xcs [Solarized Dark] text= cyan(bold)=93a1a1 text(bold)= m ...

  5. Spring MVC生成JSON数据

    以下示例演示如何使用Spring Web MVC框架生成JSON数据格式.首先使用Eclipse IDE,并按照以下步骤使用Spring Web Framework开发基于动态表单的Web应用程序: ...

  6. 【独立开发人员er Cocos2d-x实战 013】Cocos2dx 网络编程实战之星座运势

    学习cocos2d-x和cocos creator的圈子:cocos2d-x:436689827    cocos creator:124727696 本篇文章主要内容:jsoncpp的使用,Coco ...

  7. MFC多国语言——配置文件

    前段时间,因工作需要,本地化了一个英文版本的产品. 在网上查阅了若干资料,在此进行一个简单的整理. 在MFC程序中,实现多国语言的方式很多,我们选择的是使用配置文件的方法. 在通过配置文件方式实现多国 ...

  8. weblogic 8.1教程之部署(三)

    在 weblogic 都配置好了之后.就能够部署项目了. 部署项目的时候,能够大体分为两个步骤: 1,创建缓冲池: 2,配置数据源. 先启动 weblogicserver.进入weblogic 的主页 ...

  9. 《从零开始学Swift》学习笔记(Day 29)——访问级别

    Swift 2.0学习笔记(Day 29)——访问级别 原创文章,欢迎转载.转载请注明:关东升的博客 访问级别: Swift提供了3种不同访问级别,对应的访问修饰符为:public.internal和 ...

  10. jquery 模糊查询对象属性

    1.如果你需要查询的对象属性id的值包含这样的值,你可以这样读取所有此条件的对象 $("input[id*='DiscountType']").each(function (i, ...