第一种方法:字典的方法

 //质检不合格
$('#Button3').click(function () {
if (!confirm('确定质检不合格吗?'))
return; var obj = new Object();
obj.x1 = 123;
obj.y1 = "abc";
//var jsonText = $.toJSON(obj);
var jsonText = JSON.stringify(obj);
//这个时候,jsonText 传递到asp.net后,asp.net 收到字典对象,而不是字符串的json对象
//jsonText = "'" + jsonText + "'";
alert(jsonText); $.ajax({
type: "POST",
url: "Default3.aspx/ss",
data: "{'str':" + jsonText + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
cache: false,
success: function (msg) {
alert(msg.d);
},
error: function (x, e) {
alert("The call to the server side failed. " + x.responseText);
}
}); return false; }); //这里是结束
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Newtonsoft.Json; public partial class Default3 : System.Web.UI.Page
{ public class qhftest
{ public int my_x1 { get; set; }
public string my_y1 { get; set; } public qhftest(int x1, string y1)
{
this.my_x1 = x1;
this.my_y1 = y1;
} } protected void Page_Load(object sender, EventArgs e)
{ }
[System.Web.Services.WebMethod]
public static string ss(object str)
{ //qhftest ee = JsonConvert.DeserializeObject<qhftest>(str.ToString()); //return ee.my_x1.ToString()+"---"+ee.my_y1.ToString(); /*
* 先转为Dictionary对象,再转为json字符串,再转为一个具体的对象
*/
Dictionary<string, object> tmp = (Dictionary<string, object>)str; qhftest ee = JsonConvert.DeserializeObject<qhftest>(JsonConvert.SerializeObject(tmp, Formatting.Indented)); string s = ""; foreach (string key in tmp.Keys)
{
s +="----" +String.Format("Key = {0}", key);
} return tmp.ToString(); }
}

第二种方法:呕心沥血的方法

  //质检不合格
$('#Button3').click(function () {
if (!confirm('确定质检不合格吗?'))
return; var obj = new Object();
obj.x1 = ;
obj.y1 = "abc";
//var jsonText = $.toJSON(obj);
var jsonText = JSON.stringify(obj);
jsonText = "'" + jsonText + "'";
/*
* 加了两边的单引号后,就变成字符串了,asp.net就非常容易转换
*/ $.ajax({
type: "POST",
url: "Default3.aspx/ss",
data: "{'str':" + jsonText + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
async: true,
cache: false,
success: function (msg) {
alert(msg.d);
},
error: function (x, e) {
alert("The call to the server side failed. " + x.responseText);
}
}); return false; }); //这里是结束
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Newtonsoft.Json; public partial class Default3 : System.Web.UI.Page
{ public class qhftest
{ public int my_x1 { get; set; }
public string my_y1 { get; set; } public qhftest(int x1, string y1)
{
this.my_x1 = x1;
this.my_y1 = y1;
} } protected void Page_Load(object sender, EventArgs e)
{ }
[System.Web.Services.WebMethod]
public static string ss(object str)
{ qhftest ee = JsonConvert.DeserializeObject<qhftest>(str.ToString()); return ee.my_x1.ToString()+"---"+ee.my_y1.ToString(); }
}

关于 jquery+ajax向asp.net传递json的问题研究(呕心沥血、柳暗花明)的更多相关文章

  1. JQuery ajax调用asp.net的webMethod

    本文章转载:http://www.cnblogs.com/zengxiangzhan/archive/2011/01/16/1936938.html 在vs2010中,用JQuery ajax调用as ...

  2. JQuery.Ajax + 跨域 (crossDomain) + POST + JSON + WCF RESTful, 5大陷阱和解决方案

    JQuery.Ajax + 跨域 (crossDomain) + POST + JSON + WCF RESTful, 5大陷阱和解决方案 最近在开发WSS RESTful服务的时候, 碰到了这些个纠 ...

  3. jquery.ajax的url中传递中文乱码问题的解决方法

    jquery.ajax的url中传递中文乱码问题的解决方法   JQuery JQuery默认的contentType:application/x-www-form-urlencoded 这才是JQu ...

  4. [转]JQuery Ajax 在asp.net中使用总结

    本文转自:http://www.cnblogs.com/acles/articles/2385648.html 自从有了JQuery,Ajax的使用变的越来越方便了,但是使用中还是会或多或少的出现一些 ...

  5. JQuery Ajax 在asp.net中使用小结

    自从有了JQuery,Ajax的使用变的越来越方便了,但是使用中还是会或多或少的出现一些让人短时间内痛苦的问题.本文暂时总结一些在使用JQuery Ajax中应该注意的问题,如有不恰当或者不完善的地方 ...

  6. JQuery Ajax 在asp.net中使用总结

    自从有了JQuery,Ajax的使用变的越来越方便了,但是使用中还是会或多或少的出现一些让人短时间内痛苦的问题.本文暂时总结一些在使用JQuery Ajax中应该注意的问题,如有不恰当或者不完善的地方 ...

  7. 详解JQuery Ajax 在asp.net中使用总结

    自从有了JQuery,Ajax的使用变的越来越方便了,但是使用中还是会或多或少的出现一些让人短时间内痛苦的问题.本文暂时总结一些在使用JQuery Ajax中应该注意的问题,如有不恰当或者不完善的地方 ...

  8. Jquery ajax与asp.net MVC前后端各种交互

    1.Jquery通过ajaxSubmit提交表单 if (jQuery("#Edit_from").validate().form()) { jQuery("#Edit_ ...

  9. 【转】Jquery ajax与asp.net MVC前后端各种交互

    本文转载自:https://www.cnblogs.com/fengyeqingxiang/p/11169218.html 1.Jquery通过ajaxSubmit提交表单 if (jQuery(&q ...

随机推荐

  1. IDEA创建Springmvc项目

    项目主要步骤如下: 1.创建一个javaweb动态项目 2.导入springmvc demo所需要的jar包 3.生成项目war包 4.配置项目tomacat服务器 5.配置web.xml文件 6.编 ...

  2. 关于RabbitMQ分布式集群架构

    RabbitMQ分布式集群架构和高可用性(HA) (一) 功能和原理 设计集群的目的 允许消费者和生产者在RabbitMQ节点崩溃的情况下继续运行 通过增加更多的节点来扩展消息通信的吞吐量 1 集群配 ...

  3. ALGO-115_蓝桥杯_算法训练_和为T(枚举)

    问题描述 从一个大小为n的整数集中选取一些元素,使得它们的和等于给定的值T.每个元素限选一次,不能一个都不选. 输入格式 第一行一个正整数n,表示整数集内元素的个数. 第二行n个整数,用空格隔开. 第 ...

  4. http、TCP/IP协议与socket之间的区别(转载)

    http.TCP/IP协议与socket之间的区别  https://www.cnblogs.com/iOS-mt/p/4264675.html http.TCP/IP协议与socket之间的区别   ...

  5. 获取地图文档(*.mxd)中比例尺问题

    地图比例尺的概念是建立在有投影坐标系的空间参考前提下,将地图缩放到一定大小的比例值. 在多数情况下,我们都是将一个地图文档(*.mxd)加载到地图控件中(AxMapControl)显示出来,照此去获取 ...

  6. MCC MNC in china

    A mobile country code (MCC) is used in combination with a mobile network code (MNC) (a combination k ...

  7. Spring MVC controller返回值类型

    SpringMVC controller返回值类型: 1 String return "user":将请求转发到user.jsp(forword) return "red ...

  8. DELPHI中自定义消息的发送和接收

    DELPHI中的消息处理机制 Delphi是Borland公司提供的一种全新的WINDOWS编程开发工具.由于它采用了具有弹性的和可重用的面向对象Pascal(object-orientedpasca ...

  9. DB通用类:Sqlite通用类库

    Sqlite通用类库 using System; using System.Collections; using System.Collections.Generic; using System.IO ...

  10. MapReduce高级编程2

    MapReduce Top N .二次排序,MapJoin: TOP N 对于一组输入List(key,value),我们要创建一个Top N 列表,这是一种过滤模式,查看输入数据特定子集,观察用户的 ...