ASP.Net--Ajax删除

我的删除操作是搭建在三层架构上的,因此需要提前搭建好三层。创建好显示数据的页面。

第一步:把一般处理程序创建并写好相应操作代码。一般处理程序可以在JQuery中被调用。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using BLL;

namespace WebApplication1
{
    /// <summary>
    /// DelHandler 的摘要说明
    /// </summary>
    public class DelHandler : IHttpHandler
    {

        public void ProcessRequest(HttpContext context)
        {
            //获取要删除的ID
            int id = Convert.ToInt32(context.Request.QueryString["id"]);
            //执行删除,这里把受影响的行数转换成string格式用作返回给程序调用处
            string text = ProductManager.Delete(id).ToString();
            context.Response.ContentType = "text/plain";
            //返回受影响的行数
            context.Response.Write(text);
        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

 第二步:在数据显示的页面引用JQuery文件和编写Ajax操作

//引用JQuery文件  
<script type="text/javascript" src="Scripts/jquery-1.4.1.js"></script>
<script type="text/javascript">
        $(function () {
            //获取用户点击控件并为其添加单击事件
            $(".Del1").click(function () {
                //获取到这个控件
                var $this = $(this);
                //获取到控件的id属性
                var id = $this.attr("id");
                //用post调用一般处理程序并传要删除的行id
                $.post("../DelHandler.ashx?id=" + id,
                    function (data) {
                        if (data === "1") {
                            alert("删除成功!");
                            //如果删除成功,移除该行
                            $this.closest("tr").remove();
                        } else {
                            alert("删除失败!");
                        }
                    });
            });
        })
 </script>

第三步:给删除按钮控件添加属性

<a class="Del1" id='<%# Eval("id") %>'>删除</a>

注意:

  1. post方法在传id的时候可以用{id:id}的方式,这样在获取的时候需要用from的方式获取,这种方法就是比通过地址栏传参数更紧密安全一些
  2. 第三步给控件添加的属性,我直接用a标签的的id属性作为存放要删除行的id的方式了,这个方法不太友好,可以自定义属性去存放id
  3. 第二步中添加单击事件的方法也有多种,我用的比较直接的一个。还有其他更灵活的方法比如.live
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值