使用Jquery提交Json格式的数据到Asp.net程序的另类做法
2012-08-27 18:54
806 查看
一般我们使用Jquery提交数据到Asp.net程序都有两种方法,今天我再介绍一种方法.以下是详细描述:
1)使用Get请求的方式,将参数接在请求Url的后面.例如: http://www.google.com.hk/search?q=jquery+post 获取参数的方法:在Asp.net中可以使用Request.QueryString["q"]来获取参数.
2)使用Jquery的Form.js插件中的ajaxForm方法或者
自己提交之前构造一个Form在使用ajaxForm提交数据.例如:
$(document).ready(function(){
//简单模式
$("#btnSubmit1").click(function() {
$("#form1").ajaxForm();
});
//复杂模式
$("#btnSubmit1").click(function() {
var options = {
method: 'POST',
url: 'ajaxSP.aspx',
after: function(response) {
alert(response.id);
}
};
$("("#form1").ajaxForm(options);
});
});
获取参数的方法:在Asp.net中可以使用Request["q"]来获取参数.
3)那今天我想说一下第三种做法.
就是结合jQuery+Json+Asp.net并且利用Newtonsoft.Json.Net20.dll来进行Json数据的双向转换.
jQuery代码:
$.ajax({
url: "AjaxSP.aspx",
data: "{type:'DoOpenClickStart',id:'1001'}",
type: 'post',
dataType: 'json',
contentType: 'application/json; charset=utf8',
success: function(data) {
alert("ID=" + data.ID + ";Type=" + data.Type);
},
error: function(xhr) {
alert("失败!");
}
});
Asp.net代码:
1.准备一个Entity类.
publicclass AjaxSPE
{
///
/// 处理类型
///
publicstring Type { get; set; }
///
/// 要处理的记录ID
///
publicstring ID { get; set; }
}
2.Asp.net接受参数以及输出结果的核心代码:
//01.接受传入的参数(记得先引用Dll:Newtonsoft.Json.Net20.dll)
string requestJson =string.Empty;
using(StreamReader reader =new StreamReader(Context.Request.InputStream))
{
requestJson = reader.ReadToEnd();
}
AjaxSPE ajax2 =JsonConvert.DeserializeObject(requestJson, typeof(AjaxSPE)) as AjaxSPE;
结果数据如下图:
//02.传出结果Json数据,并输出到客户端.
Response.ClearContent();
Response.ContentType ="application/json";
AjaxSPE ajax =new AjaxSPE();
ajax.Type ="dddd";
ajax.ID ="1009";
string jsonString = Jsoner.JsonConvert.SerializeObject(ajax, Jsoner.Formatting.Indented);
//输出Json数据到Content
Response.Write(jsonString);
Response.Flush();
Response.End();
结果如下图:
好了,就介绍到这里.最然不是什么复杂的技术研究,也有它方便的地方.
1)使用Get请求的方式,将参数接在请求Url的后面.例如: http://www.google.com.hk/search?q=jquery+post 获取参数的方法:在Asp.net中可以使用Request.QueryString["q"]来获取参数.
2)使用Jquery的Form.js插件中的ajaxForm方法或者
自己提交之前构造一个Form在使用ajaxForm提交数据.例如:
$(document).ready(function(){
//简单模式
$("#btnSubmit1").click(function() {
$("#form1").ajaxForm();
});
//复杂模式
$("#btnSubmit1").click(function() {
var options = {
method: 'POST',
url: 'ajaxSP.aspx',
after: function(response) {
alert(response.id);
}
};
$("("#form1").ajaxForm(options);
});
});
获取参数的方法:在Asp.net中可以使用Request["q"]来获取参数.
3)那今天我想说一下第三种做法.
就是结合jQuery+Json+Asp.net并且利用Newtonsoft.Json.Net20.dll来进行Json数据的双向转换.
jQuery代码:
$.ajax({
url: "AjaxSP.aspx",
data: "{type:'DoOpenClickStart',id:'1001'}",
type: 'post',
dataType: 'json',
contentType: 'application/json; charset=utf8',
success: function(data) {
alert("ID=" + data.ID + ";Type=" + data.Type);
},
error: function(xhr) {
alert("失败!");
}
});
Asp.net代码:
1.准备一个Entity类.
publicclass AjaxSPE
{
///
/// 处理类型
///
publicstring Type { get; set; }
///
/// 要处理的记录ID
///
publicstring ID { get; set; }
}
2.Asp.net接受参数以及输出结果的核心代码:
//01.接受传入的参数(记得先引用Dll:Newtonsoft.Json.Net20.dll)
string requestJson =string.Empty;
using(StreamReader reader =new StreamReader(Context.Request.InputStream))
{
requestJson = reader.ReadToEnd();
}
AjaxSPE ajax2 =JsonConvert.DeserializeObject(requestJson, typeof(AjaxSPE)) as AjaxSPE;
结果数据如下图:
//02.传出结果Json数据,并输出到客户端.
Response.ClearContent();
Response.ContentType ="application/json";
AjaxSPE ajax =new AjaxSPE();
ajax.Type ="dddd";
ajax.ID ="1009";
string jsonString = Jsoner.JsonConvert.SerializeObject(ajax, Jsoner.Formatting.Indented);
//输出Json数据到Content
Response.Write(jsonString);
Response.Flush();
Response.End();
结果如下图:
好了,就介绍到这里.最然不是什么复杂的技术研究,也有它方便的地方.
相关文章推荐
- 使用Jquery提交Json格式的数据到Asp.net程序的另类做法.
- Asp.net C# 使用Newtonsoft.Json 实现DataTable转Json格式数据
- asp.net中 使用jquery+ashx 做ajax,json做数据传输
- asp.net中Ajax技术使用Json格式传递数据
- 如何使用jQuery向asp.net Mvc传递复杂json数据
- Asp.net C# 使用Newtonsoft.Json 实现DataTable转Json格式数据
- Asp.net MVC 使用json数据格式交互
- asp.net中 使用jquery+ashx 做ajax,json做数据传输
- asp.net中 使用jquery+ashx 做ajax,json做数据传输
- asp.net浏览器向服务器提交json格式的数据
- asp.net 使用Jquery 调用WebService返回JSON 类型数据
- 使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
- ASP.NET MVC Jquery提交Json数据
- 转:关于ASP.NET下,JQuery+AJAX使用JSON返回数据的总结
- Asp.net C# 使用Newtonsoft.Json 实现DataTable转Json格式数据
- Asp.net MVC 使用json数据格式交互 示例
- 使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
- 使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
- asp.net mvc用jquery向action提交json列表数据
- asp.net中Jquery解析json数据格式