zoukankan      html  css  js  c++  java
  • Jquery Ajax 复杂json对象提交到WebService

    一。使用get方式
    1.前台
                //复杂json对象提交
                var person = {'per':"{ 'id': 1, 'name': '张三', 'sex': '男' }"};
                $.ajax({
                    type: "get",
                    url: "JsonObject.asmx/GetPersonByObject",
                    data: person,
                    dataType: 'json',
                    contentType: 'application/json;charset=utf-8',
                    success: function (data) {
                        if (data.d == "1") {
                            $("#hello").text("服务器接收成功!");
                        }
                        else {
                            $("#hello").text("服务器接收数据失败!");
                        }
                    },
                    error: function () {
                        $("#hello").text("程序运行出错!");
                    }
                });
    2.后台
            [WebMethod]
            [ScriptMethod(ResponseFormat=ResponseFormat.Json, UseHttpGet=true)]
            public string GetPersonByObject()
            {
                string jsonStr = HttpContext.Current.Request["per"];
                Person per = jsonStr.JsonDeserialezer<Person>();//将json字符串反序列化
                if (per.Id == 1)
                {
                    return "1";
                }
                return "0";
            }
     
    二。使用post方式
    1.前台
                var person = "{'per':"{ 'id': 1, 'name': '张三', 'sex': '男' }"}";
                $.ajax({
                    type: "post",
                    url: "JsonObject.asmx/GetPersonByObject",
                    data: person,
                    dataType: 'json',
                    contentType: 'application/json;charset=utf-8',
                    success: function (data) {
                        if (data.d == "1") {
                            $("#hello").text("服务器接收成功!");
                        }
                        else {
                            $("#hello").text("服务器接收数据失败!");
                        }
                    },
                    error: function () {
                        $("#hello").text("程序运行出错!");
                    }
                });
    2.后台
            [WebMethod]
            public string GetPersonByObject(string per)
            {
              Person person=   per.JsonDeserialezer<Person>();//将json反序列化
              if (person.Id == 1)
              {
                  return "1";
              }
                return "0";
            }
     
    三。List类型json提交,post方式
    1.前台
                //复杂json对象提交2
                var person = "{'per':"[{ 'id': 1, 'name': '张三', 'sex': '男' },{ 'id': 2, 'name': '王芳', 'sex': '女' }]"}";
                $.ajax({
                    type: "post",
                    url: "JsonObject.asmx/GetPersonByOjects",
                    data: person,
                    dataType: 'json',
                    contentType: 'application/json;charset=utf-8',
                    success: function (data) {
                            $("#hello").text("就收前台数据人数:"+data.d);
                    },
                    error: function () {
                        $("#hello").text("程序运行出错!");
                    }
                });
    2.后台
            [WebMethod]
            public int GetPersonByOjects(string per)
            {
                List<Person> list = per.JsonDeserialezer<List<Person>>();//反序列化json字符串
                return list.Count;
            }
     
    四。List类型json提交,get方式
    1.前台
                var person = {'per':"[{ 'id': 1, 'name': '张三', 'sex': '男' },{ 'id': 2, 'name': '王芳', 'sex': '女' }]"};
                $.ajax({
                    type: "get",
                    url: "JsonObject.asmx/GetPersonByOjects",
                    data: person,
                    dataType: 'json',
                    contentType: 'application/json;charset=utf-8',
                    success: function (data) {
                            $("#hello").text("就收前台数据人数:"+data.d);
                    },
                    error: function () {
                        $("#hello").text("程序运行出错!");
                    }
                });
    2.后台
            [WebMethod]
            [ScriptMethod(ResponseFormat=ResponseFormat.Json,UseHttpGet=true)]
            public int GetPersonByOjects()
            {
                string per = HttpContext.Current.Request["per"];
                List<Person> list = per.JsonDeserialezer<List<Person>>();
                return list.Count;
            }
  • 相关阅读:
    Ext JS 学习笔记
    ASP中令人震撼的Debug类(VBScript)
    texttransform的使用
    综合搜索引擎代码
    做技术,切不可沉湎于技术
    站长常用广告代码的表达大全
    ASP中一个字符串处理类(加强)(VBScript)
    Asp中一些FSO方面的函数
    没有Javascript,纯CSS下拉菜单IE,FF
    ASP中一个字符串处理类(VBScript) 原版
  • 原文地址:https://www.cnblogs.com/hclw/p/4413061.html
Copyright © 2011-2022 走看看