Ajax学习那些事

来源:互联网 发布:x软件下载 编辑:程序博客网 时间:2024/06/08 07:06

1、Ajax是什么,web出现的革新?

1.1  Ajax未出现之前,Html显示的都是在服务器端预处理好的数据;如果你只要刷新页面的局部信息,但实际上你要刷新的是整个页面,全局刷新,同步处理数据,亦即重新加载整个页面。----“工作--等待”模式

1.2  Ajax出现之后,保持用户体验的页面不变,只是刷新局部,实现异步处理数据。

 

2Ajax核心组成

Ajax=XmlHttpRequest(特殊的JavaScript对象)+JavaScript事件+动态HtmlDHtml

 

3、Ajax的使用

3.1  实例化XmlHttpRequestXHR

3.2  发送请求

3.2.1  服务器资源的url

3.2.2  HTTP的请求类型,主要为getpost

3.2.3  服务器资源所需要的参数

3.2.4  一个js函数,对服务器返回的结果进行解析和处理

3.3  处理响应

3.3.1  readyState0~4

3.3.2  status200~299

 

4、Ajax从服务器端的返回

4.1  Html

4.2  JavaScript

4.3  Json

4.4  XML(结合XPATH查询和XSLT转换)

 

5、JavaScript里面的Prototype

5.1  获取DOM元素的引用--$()函数

$(“someElementId”)=document.getElementById(“someElementId”)

$()函数既可以传入一个id字符串,也可以传入一个DOM引用

5.2  读取表单控件的值--$F()函数

Value=$F(“someElementId”),传入一个id字符串

5.3  对数组的扩展

5.3.1  $A()函数,可以把其他构造转换成Array类的实例,特别是能够把XML 文档的NodeList转换成数组

5.3.2  Enumerable类,旗下有each(函数引用作为参数)方法,作为函数引用 的参数必须要实现function iteratorFunction(element,index);接口。

5.4  Hash

Object类可以被视为“关联数组”(键/值、属性/值)

$H()函数可以根据任意一个js对象的属性和值来创建一个Hash类的实例

toQueryString()方法,对hash所包含的名值对进行格式化,形成对应的HTTP 查询字符串,通常与$H()结合使用

代码片段1

var o = new Object();

o.a=1;

o.b=2;

o.c=3;

Document.write($H(o).toQueryString());

结果a=1&b=2&c=3

对于一些被编码的字符,执行toQueryString()方法后会自动替换成对应的编 码(空格、+&

5.5  给函数绑定上下文对象

函数名.bind(实例化对象)

类似的还有bindAsEventListener()用于事件的绑定回调

5.6  Prototype创建类

代码片段1

Something = Class.create();

Something.prototype.initialize = function(p1,p2,p3){

/*constructor*/

};

SomethingPrototype.othermethod = function(){

/* other method*/

}

5.7  prototype合并对象和扩展类

Object.extend(object1,object2);object2中的复制一份到object1中,如果有 相同属性,则object2优先,最后返回一个object1对象

 

0 0
原创粉丝点击