ajax删除DB数据
1.前台js
$().ready(function () { $('[name="checkAll"]').click(function () {
if ("checked" == $('input[name="checkAll"]').attr("checked")) {
$('input[type="checkbox"]').attr("checked", "checked");
} else {
$('input[type="checkbox"]').removeAttr("checked");
}
}); $('input[name="btnDelete"]').click(function () {
var checkCount = 0; $('input[type="checkbox"]').not('input[name="checkAll"]').each(function (index, element) {
if ("checked" == $(this).attr("checked")) {
checkCount++;
}
}); if (checkCount <= 0) {
alert("请选择您要删除的数据!");
return false;
} if (confirm("确定要删除吗?")) {
var data = "["; $('input[type="checkbox"]').not('input[name="checkAll"]').each(function (index, element) {
if ("checked" == $(this).attr("checked")) {
data += "{id : " + $(this).val() + "} ,";
}
}); if (data != "[") {
data = data.substring(0, data.length - 1) + "]"; $.post("/User/DeleteById", data, function success(result) {
//1.ajax返回单个字符串内容
//var msg = " <font style='color:red'>" + result + "</font>";
//if ($('#ajaxMsg').html() == '') {
// $('#ajaxMsg').append(msg);
//} //2.ajax返回多个字符串内容
var msg = " <font style='color:red'>删除成功!</font>";
if ($('#ajaxMsg').html() == '') {
$('#ajaxMsg').append(msg);
} $('input[name="checkAll"]').removeAttr("checked"); $('input[type="checkbox"]').not('input[name="checkAll"]').each(function (index, element) {
$(this).parent().parent().remove();
}); var ajaxResult = $.parseJSON(result);
$.each(ajaxResult, function (index, element) {
var tr = "<tr>"
+ "<td><input type='checkbox' value='" + element.ID + "' /></td>"
+ "<td><a href='/User/Detail/" + element.ID + "'>" + element.UserName + "</a></td>"
+ "<td>" + element.Phone + "</td>"
+ "<td>" + element.Email + "</td>"
+ "<td>" + element.Address + "</td>"
+ "<td>" + element.CreateTime + "</td>"
+ "<td>" + element.UpdateTime + "</td>"
+ "<td><a href='/User/Edit/" + element.ID + "'>修改</a></td>"
+ "<td><a href='/User/Delete/" + element.ID + "'>删除</a></td>"
+ "</tr>";
$('table').append(tr);
});
});
}
}
});
});
2.后台代码:
[HttpPost]
public ActionResult DeleteById()
{
String ajaxId = Request.Params[]; JavaScriptSerializer js = new JavaScriptSerializer();
List<AjaxReq> ajaxReqList = js.Deserialize<List<AjaxReq>>(ajaxId);
if (null != ajaxReqList && < ajaxReqList.Count())
{
foreach (AjaxReq ajaxReq in ajaxReqList)
{
UserDto user = new UserDto();
user.ID = ajaxReq.ID;
db.Entry<UserDto>(user).State = System.Data.EntityState.Deleted;
db.SaveChanges();
}
} List<UserDto> userList = db.Users.ToList(); //1.ajax返回单个字符串内容
//return base.Json("删除成功!"); //2.ajax返回多个字符串内容
return base.Json(js.Serialize(userList)); }
ajax删除DB数据的更多相关文章
- 一般删除网页数据和jquery下使用Ajax删除数据的区别
1. 一般删除网页数据 就是指用户在点击删除的时候,会跳转到DeleteUser.ashx一般处理程序中,并且通过get传参的方式传递一个id的参数,然后在后台处理 <a href='Delet ...
- MVC使用jQuery.ajax()删除数据
jQuery.ajax()可以简写为$.ajax().以前有写过MVC删除的实现,如<MVC实现删除数据库记录> http://www.cnblogs.com/insus/p/336804 ...
- python 全栈开发,Day75(Django与Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传,SweetAlert插件)
昨日内容回顾 基于对象的跨表查询 正向查询:关联属性在A表中,所以A对象找关联B表数据,正向查询 反向查询:关联属性在A表中,所以B对象找A对象,反向查询 一对多: 按字段:xx book ----- ...
- Django与Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传,SweetAlert插件
一.Django与Ajax AJAX准备知识:JSON 什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻 ...
- 用Ajax删除的做法
一般程序文件代码 using System;using System.Web;using System.Linq;using System.Data.Linq; public class Shanch ...
- 通过Transaction Log(fn_dblog)取回被删除的数据
最近跟 James 讨论为何「ApexSQL Log」这个工具可以读到被删除的数据呢? 原来它是透过 Transaction Log 来读取数据的! 于是透过 Transaction Log 到网络上 ...
- jmeter导入DB数据再再优化
前言:分享和规定命名规范后,各位测试人员一致认为这样jmeter的jmx文件限制太死,主要体现六方面: 第一:规定了一个jmx文件只能录入一个接口,这样会导致jmx文件很多 第二:导入DB的jmx文件 ...
- mongodb删除重复数据
注:mongodb当前版本是3.4.3 插入六条数据: 查询存在重复的数据: 查询并循环删除重复数据: 删除语句解析: db.userInfo.aggregate([ { ...
- 前台返回json数据的常用方式+常用的AJAX请求后台数据方式
我个人开发常用的如下所示: 之所以像下面这样下,一是前台Ajax,二是为安卓提供接口数据 现在常用的是返回JSON数据,XML的时代一去不复返 JSON相对于XML要轻量级的多 对JSON不是十分熟悉 ...
随机推荐
- spring 静态注入
1.静态注入 在setter 方法修改为非 static , 然后在上面注入即可 @Component public class WeixinConfig { // token public stat ...
- plsql配置数据库连接
工具/原料 PL/SQL 方法/步骤 在Oracle的安装文件下查找tnsnames.ora文件,一般路径如: ORACLE_HOME%\network\admin下: 如果真的找不到路径 ...
- centos6 安装mysql报错Requires: libc.so.6(GLIBC_2.14)
是应为版本弄混了,不可以把el7的mysql装到el6系统上,重新下载centos6对应的版本的,这里是centos6选择el6版本的 wget http://dev.mysql.com/get/my ...
- Python中模块安装文件的创建及使用
在Python编程中,我们常常需要自己编写模块,当模块文件写好了,就需要创建安装文件,方便模块的发布. 此时,常用的方法,就是使用Python distutils(代表distribution uti ...
- 常用ubuntu命令
解压缩.7z sudo apt-get install p7zip-full 7z x PACKAGE.7z 查看图片 eog A.png 关闭打开触摸板(触点) sudo rmmod psmouse ...
- MarkdownPad 2 在win10下出错:HTML 渲染错误(This view has crashed) 的解决办法 + MarkdownPad2.5 注册码
首先附上MarkdownPad2.5的注册码. 邮箱:Soar360@live.com 授权密钥: GBPduHjWfJU1mZqcPM3BikjYKF6xKhlKIys3i1MU2eJHqWGImD ...
- bzoj4555题解
我们计算$f(i)=\sum_{j=1}^i S(i,j)\times 2^j\times (j!)$,容(o)易(e)知(i)道(s)$f(i)$的指数生成函数为$\frac{1}{3-2\time ...
- visual stuido 跨解决方案调试
visual stuido 跨解决方案调试 一个解决方案是一个第三方库,另一个是单独的程序.调试的时候要同时跟踪源码.因为第三方库并没有直接使用它的源码,而是使用生成的dll,直接进行调试比较麻烦,会 ...
- git+github上传与管理
1.首先下载并安装git,方便管理github上的代码 https://git-scm.com/downloads 2.然后点击安装好的git bash(注册好自己的github) git confi ...
- 使select文本框可编辑可选择(jQuery插件)
最近做项目中用到了这个插件,正好分享下. 1. 需要用的js包点击下载,在项目中引入该js. <script src="${pageContext.request.contextPa ...