confirm对话框取消后阻止ajax操作、ajax做批量删除
在做批量删除的时候,需要用confirm弹出一个提示框让用户确认是否删除,点击确定,执行操作,点击取消,取消操作。但是如果使用ajax把选中项的主键值传到处理页面处理时,如果使用下面的方法将confirm直接写在按钮里面,在点击取消后,ajax会继续执行操作,删除选中项。
1.confirm错误写法:
<button type="button" onclick="return confirm('确定删除选中项吗!')" id="piliang" class='btn btn-primary btn-lg' data-target='#myModal'>批量删除</button>
2.可以用下面的方法将confirm写在js里面,可以避免这个问题。
(1)按钮代码
<button type="button" id="piliang" class='btn btn-primary btn-lg' data-target='#myModal'>批量删除</button>
(2)js代码
$("#piliang").click(function(){
var statu = confirm("确认删除选中项吗!");//在js里面写confirm,在页面中弹出提示信息。
if(!statu)//如果点击的是取消
{
return false;//返回页面
}
else{//如果点击确定,就继续执行下面的操作
var attr = new Array();//建立一个数组
$(".qx").each(function() {//each循环遍历出所有的复选框
if($(this).prop("checked")) //判断被循环的.ck是否被选中
{
attr.push($(this).attr("value")); //去value的属性取到该项数据的主键值,扔到数组attr里面
}
});
var stra = attr.join("','");//把attr数组里的lie[0]用 ',' 拆分
$.ajax({
url:"../chuli/deletepiliang.php",
data:{stra:stra},//把拆分后的数组传到处理页面,数据的格式为 主键1','主键2','主键3 这里看似少了最外面的2个'',带着这个疑问去看处理页面
type:"POST",
dataType:"TEXT",
success: function(data){
window.location.href="guanliry.php";
}
});
}
})
3.处理页面deletepiliang.php
<?php
session_start();
include("../libs/DBDA.php");
$db = new DBDA();
$attr = ($_POST["stra"]);//取传过来的选定的主键值
$sql = "delete from jx_user where uid in('{$attr}')";//把上面的缺少最外面的''的字符串放到这里,('{$attr}')中的{$attr}就是拿过来的字符串,外面的''正好弥补了缺少的''。
$db->query($sql,0); ?>
confirm对话框取消后阻止ajax操作、ajax做批量删除的更多相关文章
- 在WebGrid中做 批量删除操作
一般的MVC WebGrid都是在每一行中加入 Edit Detail Delete 这些Link 去对每条记录去单独操作. 稍微研究了一下总结一个 做批量删除的办法. 1. 首先是在WebGrid中 ...
- php 用封装类的方法操作数据库和批量删除
封装类 <?php class DBDA { public $host="localhost"; //服务器地址 public $uid="root"; ...
- ajax 操作
ajax 操作 ajax呢,就是要做到在神不知鬼不觉的情况之下给服务端发送请求. ajax能干啥哩? 这,,,,: 利用AJAX可以做:1.注册时,输入用户名自动检测用户是否已经存在.2.登陆时,提示 ...
- Django(九)下:Ajax操作、图片验证码、KindEditor使用
三.Ajax操作 ajax操作基于浏览器的xmlHttpRequest对象,IE低版本是另外一个对象,jQuery 1 版本对那两个对象做了封装,兼容性最好,2 .3版本不再支持IE低版本了. Aja ...
- laravel基础课程---11、lavarel的ajax操作(ajax优劣势是什么)
laravel基础课程---11.lavarel的ajax操作(ajax优劣势是什么) 一.总结 一句话总结: 优势:用户友好度:异步通信,不会频繁刷新页面,用户友好度比较高 优势:减轻数据库压力 缺 ...
- php jquery+ajax写批量删除
为了美观,我还是引入了bootstrap的模态框,我引入的是自己的数据库 library中的一张表 名为:maninfo表 是一张个人信息表 表的加载我就不写了,比较简单, 大概写一下需要的按 ...
- jquery的常用ajax操作
$.ajax() 定义和用法 ajax() 方法通过 HTTP 请求加载远程数据. 该方法是 jQuery 底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等.$.ajax() ...
- 关于jQ的Ajax操作
jQ的Ajax操作 什么是AJAX AJAX = 异步的javascript和XML(Asynchronous Javascript and XML) 它不是一门编程语言,而是利用JavaScript ...
- jQuery Ajax 操作函数及deferred对象
jQuery Ajax 操作函数 jQuery 库拥有完整的 Ajax 兼容套件.其中的函数和方法允许我们在不刷新浏览器的情况下从服务器加载数据. 函数 描述 jQuery.ajax() 执行异步 H ...
随机推荐
- Android InputType详解
android:inputType 如果设置android:inputType = "number",则默认弹出的输入键盘为数字键盘,且输入的内容只能为数字. InputType文 ...
- Foundation框架下的常用类:NSNumber、NSDate、NSCalendar、NSDateFormatter、NSNull、NSKeyedArchiver
========================== Foundation框架下的常用类 ========================== 一.[NSNumber] [注]像int.float.c ...
- koala预编译工具的使用
Koala是一个开源的预处理语言图形编译工具,目前已支持Less.Sass.Compass与CoffeeScript. 安装Koala 在Koala官网根据你的系统平台下载对应的版本.Linux系统要 ...
- 第二章作业-第3题(markdown格式)-万世想
第3题题目是: 完成小组的"四则运算"项目的需求文档(使用Markdown写文档),尝试同组成员在各自PC上修改同一文档后,如何使用Git命令完成GitHub上的文档的更新,而不产 ...
- CentOS安装gitlab,gerrit,jenkins并配置ci流程
CentOS安装gitlab,gerrit,jenkins并配置ci流程 By Wenbin juandx@163.com 2016/4/9 这是我参考了网上很多的文档,配置了这三个软件在一个机器上, ...
- 介绍几个好用的vs插件
1.打开扩展管理器. 1.jsenhancement插件. 参考文章:http://www.cnblogs.com/dudu/archive/2011/02/27/vs2010_extension_J ...
- Mysql查询语句使用select.. for update导致的数据库死锁分析
近期有一个业务需求,多台机器需要同时从Mysql一个表里查询数据并做后续业务逻辑,为了防止多台机器同时拿到一样的数据,每台机器需要在获取时锁住获取数据的数据段,保证多台机器不拿到相同的数据. 我们My ...
- webapi frombody fromuri的参数绑定规则
在WebAPI中,请求主体(HttpContent)只能被读取一次,不被缓存,只能向前读取的流. 举例子说明: 1. 请求地址:/?id=123&name=bob 服务端方法: void Ac ...
- 飞一般的国内maven中央仓库
修改maven根目录下的conf文件夹中的setting.xml文件,内容如下: <mirrors> <mirror> <id>alimaven ...
- CANopen学习——PDO
查找资料时,发现一个很好的博客,博主剖析的通俗易懂 http://www.cnblogs.com/winshton/p/4897556.html PDO定义: 过程数据对象,用来传输实时数据.因为 ...