黑马程序员_学习日记73_725ASP.NET(禁用Cookie、ASP.NET中的重要对象、JavaScript实现AJAX、两种Json格式的序列化方法、JQuery中实现ajax的五种方法)
2012-07-29 21:55
1421 查看
一、禁用Cookie
禁用cookie
<sessionState cookieless=”true”>
</sessionState>
在webconfig中禁用了cookie,session还可以使用,sessionId通过url传递。
如果在浏览器中禁用cookie,这时session每次都是新建,相当于一个新的对话
二、ASP.NET中的重要对象
Application对象可以存储应用程序级的数据。
第一个用户访问站点时,应用程序启动,并创建一个Application对象,创建成功后,整个应用程序都可以使用。
三、AJAX编程技术
Asynchronous JavaScript and XML
中文:异步JavaScript和XML
指一种创建交互式网页应用的网页开发技术。
不是指一种单一的技术,而是有机地利用了一系列相关的技术
AJAX本质是浏览器技术,主要目的局部交换客户端及服务端间的数据
四、JavaScript实现AJAX
其中
异步对象的readyState属性指出了XMLHttpRequest对象在发送/接收数据过程中所处的几个状态。XMLHttpRequest对象会经历5种不同的状态:
0:未初始化,new完后。
1:已打开。对象已经创建并初始化,但还未调用send方法
2:已发送。已调用send方法,但该对象正在等待状态码和头的返回
3:正在接收。已经接收了部分数据,但还不能使用该对象的属性和方法,因为对象的状态和响应头不完整。
4:已加载。所有数据接收完毕
五、两种Json格式的序列化方法
第二种方法要添加引用Extensions程序集
第二种序列化的方式:如果对象之间有循环依赖,则会出现问题。
六、Jquery中实现ajax的五种方法:
小知识点:
HttpModule是HttpApplication实例在Init()方法中初始化绑定的事件
禁用cookie
<sessionState cookieless=”true”>
</sessionState>
在webconfig中禁用了cookie,session还可以使用,sessionId通过url传递。
如果在浏览器中禁用cookie,这时session每次都是新建,相当于一个新的对话
二、ASP.NET中的重要对象
Application对象可以存储应用程序级的数据。
第一个用户访问站点时,应用程序启动,并创建一个Application对象,创建成功后,整个应用程序都可以使用。
三、AJAX编程技术
Asynchronous JavaScript and XML
中文:异步JavaScript和XML
指一种创建交互式网页应用的网页开发技术。
不是指一种单一的技术,而是有机地利用了一系列相关的技术
AJAX本质是浏览器技术,主要目的局部交换客户端及服务端间的数据
四、JavaScript实现AJAX
$(function () { $("#btnGetDate").click(function () { var xhr; //1、创建异步请求的核心对象 if (XMLHttpRequest) { xhr = new XMLHttpRequest(); } //2、设置请求对象跟后台哪个页面交互 xhr.open("Get", "ProcessAjax.ashx?p=33", true); //3、发送请求 xhr.send(); //4、后台返回数据后会调用此方法 xhr.onreadystatechange = function () { //“4”表示前台已经接受了后台的响应报文 if (xhr.readyState == 4) { alert(xhr.responseText); } }; }) });
其中
异步对象的readyState属性指出了XMLHttpRequest对象在发送/接收数据过程中所处的几个状态。XMLHttpRequest对象会经历5种不同的状态:
0:未初始化,new完后。
1:已打开。对象已经创建并初始化,但还未调用send方法
2:已发送。已调用send方法,但该对象正在等待状态码和头的返回
3:正在接收。已经接收了部分数据,但还不能使用该对象的属性和方法,因为对象的状态和响应头不完整。
4:已加载。所有数据接收完毕
五、两种Json格式的序列化方法
public void ProcessRequest (HttpContext context) { context.Response.ContentType = "text/plain"; List<CityInfo> cities = new List<CityInfo>() { new CityInfo(){CityId = 1,CityName = "潍坊"}, new CityInfo(){CityId = 2,CityName = "青岛"}, new CityInfo(){CityId = 3,CityName = "济南"}, new CityInfo(){CityId = 4,CityName = "东营"}, new CityInfo(){CityId = 5,CityName = "烟台"} }; //第一种方式:拼接Json字符串 //StringBuilder sb = new StringBuilder(); //sb.Append("["); //foreach (var cityInfo in cities) //{ // sb.Append("{");//"{"大概是特殊字符 // sb.AppendFormat("\"CityId\":\"{0}\",\"CityName\":\"{1}\"",cityInfo.CityId,cityInfo.CityName); // sb.Append("},"); //} //string str = sb.ToString().TrimEnd(','); //str += "]"; //context.Response.Write(str); //-------------------------------------------------------------------------- //第二种方式:将对象序列化为Json格式 JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer(); string json = javaScriptSerializer.Serialize(cities); context.Response.Write(json); }
第二种方法要添加引用Extensions程序集
第二种序列化的方式:如果对象之间有循环依赖,则会出现问题。
六、Jquery中实现ajax的五种方法:
<head> <title></title> <script src="../Scripts/jquery-1.4.1.js" type="text/javascript"></script> <script type="text/javascript"> $(function () { $("#btnGetJson").click(function () { $.getJSON("ResponseJson.ashx", "a=3&b=4", function (data) { alert(data[1].CityName); }); }); $("#btnJQGet").click(function () { $.get("ResponseJson.ashx", "dd=33", function (data) { alert(data); }); }); $("#btnJQPost").click(function () { $.post("ResponseJson.ashx", { d: 33, demo: "shit" }, function (data) { alert(data[0].CityName); }, "json"); }); $("#btnAjax").click(function () { $.ajax({ url: "ResponseJson.ashx", data: "a=3&b=4", type: "Post", success: function (data) { alert(data); }, error: function () { alert("错误!"); } }); }); $("#btnLoad").click(function () { $("#divDemo").load("ResponseJson.ashx", { id: 333 }, function (data) { alert(data); }); }); }); </script> </head> <body> <input type="button" value="JQ GetJson" id="btnGetJson" /> <input type="button" value="JQ Get" id="btnJQGet" /> <input type="button" value="JQ Post" id="btnJQPost" /> <input type="button" value="JQ ajax" id="btnAjax" /> <input type="button" value="JQ load" id="btnLoad" /> <div id="divDemo"></div> </body>
小知识点:
HttpModule是HttpApplication实例在Init()方法中初始化绑定的事件
相关文章推荐
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml) 用javascript在客户端删除某一个cookie键值对 input点击链接另一个页面,各种操作。 C# 往线程里传参数的方法总结 TCP/IP 协议 用C#+Selenium+ChromeDriver 生成我的咕咚跑步路线地图 (转)值得学习百度开源70+项目
- 在ASP.net 3.5中 用JSON序列化对象(两种方法)
- 85---ajax实现的传统方式以及jquery方式,jquery方式的五种方法,json对象的转换方法, JSON类型的Result
- 步步为营:Asp.Net序列化Json格式的两种方法
- 在ASP.net 3.5中 用JSON序列化对象(两种方法)(转自LeonSky)
- 转载:在ASP.net 3.5中 用JSON序列化对象(两种方法)
- Jquery 组合form元素为json格式,asp.net反序列化
- asp.net中利用Jquery+Ajax+Json实现无刷新分页(二)
- asp.net中利用Jquery+Ajax+Json实现无刷新分页
- Asp.Net分页方法:JQuery插件实现Ajax无刷新分页、AspNetPager分页控件实现分页
- 菜鸟蔡之Ajax复习第一篇(后台asp.net)(传统的JavaScript方法实现Ajax功能)
- ASP.net 中用JQuery+AJAX+JSON 实现无刷新传参
- ASP.NET Boilerplate 学习 AspNet Core2 浏览器缓存使用 c#基础,单线程,跨线程访问和线程带参数 wpf 禁用启用webbroswer右键菜单 EF Core 2.0使用MsSql/MySql实现DB First和Code First ASP.NET Core部署到Windows IIS QRCode.js:使用 JavaScript 生成
- ASP.NET向Javascript传递变量两种实现方法
- 用json格式返回自定义对象。(jQuery asp.net)
- asp.net中利用Jquery+Ajax+Json实现无刷新分页
- ASP.NET(AJAX+JSON)实现对象调用
- asp.net :使用jquery 的ajax +WebService+json 实现无刷新去后台值
- ASP.NET使用Ajax返回Json对象的方法