其实很早就开通博客园了,一直想写些有价值的东西,供自己以后查阅的同时,也可以帮助别人遇到此类问题时能有一个好的解决方法.但是由于各种原因,

就没有实施我的想法。今天突然很想写下一篇文章,不知道我的第一篇文章应该写些什么,那我就写一个最近做的一个小程序的一个知识点吧。

今天主要写ajax post提交到一般处理程序,一般处理程序接收到数据如何解析和处理的。其实在网上也看到了一些例子,但是总是会有这样那样的问题。所以

我把代码贴出来,希望能帮助到大家。

先将js代码贴出来

  <script type="text/javascript">
function submit() {
var form = document.getElementById("form1");
var obj = {
CompanyName: form.CompanyName.value,
Customer: form.Customer.value,
MobilePhone: form.MobilePhone.value
}
if (obj.Customer.length < ) {
alert("请输入姓名,不少于2个字符");
return;
}
if (obj.MobilePhone.length == ) {
alert("请输入正确的手机号");
return;
}
//var json = { "RealName": obj.RealName, "phone": obj.phone, "CardID": obj.CID, "Unit": obj.Unit };
$.ajax({
url: "../Register.ashx?type=3",
type: "POST",
data: JSON.stringify(obj),//将对象转换成字符串传递到后台进行处理
success: function (res) {
loading(false);
if (res == "注册成功") {
alert(res);
} else {
alert(res);
}
},
error: function () {
loading(false);
}
}); }
</script>

后台代码如下:

  public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "application/json; charset=utf-8";
string type= context.Request.QueryString["type"];
byte[] byts = new byte[context.Request.InputStream.Length];
context.Request.InputStream.Read(byts, , byts.Length);
string strfiled = System.Text.Encoding.UTF8.GetString(byts);
strfiled = context.Server.UrlDecode(strfiled);
User result = (User)JsonConvert.DeserializeObject(strfiled, typeof(user));
Json json = new Json();
context.Response.Write("OK");
}

其中string type= context.Request.QueryString["type"]; 这一行代码是获取url中的参数type值得

 byte[] byts = new byte[context.Request.InputStream.Length];
context.Request.InputStream.Read(byts, 0, byts.Length);
string strfiled = System.Text.Encoding.UTF8.GetString(byts);
strfiled = context.Server.UrlDecode(strfiled);
以上几行代码主要是获取ajax请求中的data参数的数据。 User result = (User)JsonConvert.DeserializeObject(strfiled, typeof(user));
这一行代码主要是将获取到的数据转换成相应的对象User实体类。 其中JsonConvert这个类是需要引用Newtonsoft.Json.dll类库才可以使用。 注意:context.Response.Write(),如果返回的是对象,那么请将对象转换成字符串返回,并且ajax dataType设置成"text" 这样才能正确返回数据。
到这里就讲完了,这里只是简单的讲一下ajax post请求一般处理程序,一般处理程序是如何接收请求的数据的,很简单的一个例子,我从来都没有写过博客,可能写的不好,希望大家多多包涵,
也希望大家能为我提提意见,也希望我以后能写出更多有意义也很实用的文章。
 

最新文章

  1. Atitit linux获取项目运行环境版本
  2. 漫谈java重载与重写
  3. POJ 1200 字符串HASH
  4. HQL 参数绑定、唯一结果、分页、投影总结(下)
  5. RabbitMQ、Memcache、Redis(队列、缓存)
  6. Oracle横向纵向汇总
  7. PHP编写的图片验证码类文件分享方法
  8. Asp.Net读写XML简单方法
  9. PHP自动执行程序
  10. POJ 1651 Multiplication PuzzleDP方法:
  11. 关于本地$.get(url,function(data)),异步获取数据
  12. SPOJ 375 树链剖分
  13. 终于购入Mac mini,发现HDMI接口与显示器不兼容,网购了一个VGA转换插头
  14. centos7创建新用户
  15. 51 nod 1515 明辨是非(并查集合并)
  16. 微信小程序之初探(常见语法 VS vue)常见问题(点击不生效,数据绑定)
  17. 【easy】108. Convert Sorted Array to Binary Search Tree
  18. java代码生成json数据
  19. Alisha’s Party (HDU5437)优先队列+模拟
  20. HTTP Authentication

热门文章

  1. SharePoint Srver 2010 资源汇总
  2. 关于ListView的 addHeaderView(...) 方法
  3. [转]ASP.NET MVC 入门5、View与ViewData
  4. 关键在封装并发出了帧-IP冲突也无所谓
  5. oracle命令行操作
  6. mysql 不支持innodb的问题解决
  7. IOS ScrollowView 滑动到边缘后不允许再拖动
  8. scala编程笔记(三)类,字段和方法
  9. 分布式助手Zookeeper(三)
  10. MySQL::SQL_MODE