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不是十分熟悉 ...
随机推荐
- ubuntu系统theano和keras的安装
说明:系统是unbuntu14.04LTS,32位的操作系统,以前安装了python3.4,现在想要安装theano和keras.步骤如下: 1,安装pip sudo apt-get install ...
- 使用php+swoole对client数据实时更新(下)
上一篇提到了swoole的基本使用,现在通过几行基本的语句来实现比较复杂的逻辑操作: 先说一下业务场景.我们目前的大多数应用都是以服务端+接口+客户端的方式去协调工作的,这样的好处在于不论是处在何种终 ...
- NFS配置(centos)
一.简介 NFS(Network File System/网络文件系统): 1).设置Linux系统之间的文件共享(Linux与Windows中间文件共享采用SAMBA服务): 2) ...
- SQL处理数组,字符串转换为数组
原文转载自:http://hi.baidu.com/gagahjt/item/fd081316450f05028ebde413 一.按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串 ...
- iOS音频解码表格
- web页面跳转的几种方式
可用客户端触发或服务端触发的方式来实现页面跳转. 客户端触发 方式一:使用Javascript 利用window.location对象的href属性.assign()方法或replace()方法来实现 ...
- HTTP返回码中301与302的区别 (转载)
一.官方说法 301,302 都是HTTP状态的编码,都代表着某个URL发生了转移,不同之处在于: 301 redirect: 301 代表永久性转移(Permanently Moved). 302 ...
- BZOJ 题目整理
bzoj 500题纪念 总结一发题目吧,挑几道题整理一下,(方便拖板子) 1039:每条线段与前一条线段之间的长度的比例和夹角不会因平移.旋转.放缩而改变,所以将每条轨迹改为比例和夹角的序列,复制一份 ...
- CSS3实现鼠标移动到图片上图片变大
CSS3实现鼠标移动到图片上图片变大(缓慢变大,有过渡效果,放大的过程是有动画过渡的,这个过渡的时间可以自定义 <!DOCTYPE html><html> <head&g ...
- Appium 三种wait方法(appium 学习之改造轮子)
前些日子,配置好了appium测试环境,至于环境怎么搭建,参考:http://www.cnblogs.com/tobecrazy/p/4562199.html 知乎Android客户端登陆:htt ...