关于asp.net 中通过jquery 的cookie和后台进行设置问题

 

   最近在开发一项功能的时候需要用到了jquery 的 cookie功能,主要需求是通过cookie来实现listbox功能的增加、删除等功能

本来想用asp:ListBox,但是感觉没那么好看,所以就采用了js+CSS模式,通过cookie来实现前后台操作。

这里主要想记录一下一个问题,就是每次页面加载的时候后台都会动态的去增加cookie,当聪listbox中删除对应的项时,js也要把对应cookie删除掉,避免重复插入或更新问题。代码如下:

后台代码:

                HtmlGenericControl div = new HtmlGenericControl("div");
                div.InnerText = dr["username"].ToString();
                div.InnerHtml = dr["username"].ToString();
                div.Attributes.Add("data-value", dr["username"].ToString());
                div.Attributes.Add("data-index", dr["username"].ToString());
                div.Attributes.Add("class", "item");
                div.ID ="Listvalue_"+i;
                select_b_list.Controls.Add(div);
                string strValue = HttpUtility.UrlEncode(dr["username"].ToString()).ToUpper();//dr["username"].ToString();//;
                HttpCookie cookie = new HttpCookie(strValue, strValue);
               // cookie.Expires = System.DateTime.Now.AddDays(1);
                Response.AppendCookie(cookie);   

   JS 代码 :

        //删除选中
        btn_b.click(function () {
            var a = select_b.find(".is_select").clone(true);
            if (a.size() == 0) {
                return false;
            }
            var isCheck = true;
            select_a.children("div").each((function () {
                if ($(this).attr("data-value") == a.attr("data-value")) {
                    isCheck = false;
                }
            }))
            if (isCheck) {
                select_a.append(a);
            }
            var xx = a.attr("data-value");
            //$.cookie(xx, '', { expires: -1 });
            $.removeCookie(xx, { domain: '', path: '/' });
            //$.cookie(xx, null, {path:'/'})
            select_b.find(".is_select").remove();
           // option_sort(select_a);
        });

  通过这样的操作就可以直接将cookie删除掉,避免后台根据cookie name 重复插入数据库表的问题

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值