• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

asp.netajax传递Json给aspx.cs后台webmethod方法传递json

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1、提取一个向后台写入数据的方法

            ///向后台cs页面请求数据的方法
            function myPost(url,data,func) {
                $.ajax({
                    type: "post", //要用post方式  
                    data:data,
                    url: url,//"Demo.aspx/SayHello",//方法所在页面和方法名
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: function (data) {
                        func(1,data.d);
                    },
                    error: function (err) {
                        func(-1,err);
                    }
                });
            }

2.1、没有参数的传递到后台的写法

            myPost("orgList.aspx/GetOrgList","{}", function (isSuccess, data) {
                    if (isSuccess < 0) { layer.msg(data); return; }
                    if (data && data.length > 0) {
                        zTreeNodes = eval('(' + data + ')');
                        zTreeObj = $.fn.zTree.init($("#tree"), setting, zTreeNodes);
                    }
                });    

2.2带参数的写法

              myPost("orgList.aspx/GetModel","{ID:"+treeNode.id+"}", function (isSuccess, data) {
                    if (isSuccess < 0) { layer.msg(data); return; }
                    if (data && data.length > 0) {
                        var model = eval('(' + data + ')');
                        for (var key in model) {
                            vue.model[key] = model[key];
                        }
                    }
                });    

2.3传递json的写法

                var model = String.toSerialize(vue.model);//.replace(/\"/g,"'");  
                myPost("orgList.aspx/Save","{value: '"+model+"'}", function (isSuccess, data) {//当传递的是对象的时候,一定要保证将对象转换为字符串
                    if (isSuccess < 0) { layer.msg(data); return; }
                    if (data == 1) {
                        //重新加载控件
                        GetPowerTree();
                        clearData();
                        layer.msg("保存成功!");
                    }
                    else if (data == -1) {
                        layer.msg("保存失败!");
                    }
                    else if (data == -2) {
                        layer.msg("此机构已存在!");
                    }
                });

3.1 无参数后台接收方法

        [WebMethod]
        public static string GetOrgList()
        {
            DataTable dt = bll.GetList("1=1").Tables[0];
            return JsonHelper.DataTableToJSON(dt);
        }

3.2带参数的后台接收方法

       [WebMethod]
        public static string GetModel(long ID)
        {
            Model.Org_Orginfo model = bll.GetModel(ID);
            return JsonHelper.ObjectToJSON(model);
        }

3.3传递json的后台接收方法

        [WebMethod]
        public static string Save(string value)
        {
            bool succ = false;
            Model.Org_Orginfo model = JsonHelper.JSONToObject<Model.Org_Orginfo>(value);
            if (model.id < 0)
            {
                if (bll.Exists($"orgName='{model.orgName}'")) return "-2";
                model.Createtime = DateTime.Now;
                model.CreateUser = 1;//创建人-------------------------------------
                succ = bll.Add(model);
                return succ ? "1" : "-1";
            }
            else
            {
                if (bll.Exists($"orgName='{model.orgName}' and id={model.id.ToString()}")) return "-2";
                succ = bll.Update(model);
                return succ ? "1" : "-1";
            }
        }

参考:http://www.cnblogs.com/huanbia/archive/2013/03/03/2941293.html

           https://blog.csdn.net/naruto517308294/article/details/49097493

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap