滑轨厂家
免费服务热线

Free service

hotline

010-00000000
滑轨厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

web20中AJAX技术运用

发布时间:2020-03-10 10:13:02 阅读: 来源:滑轨厂家

中介交易 SEO诊断淘宝客 站长团购 云主机 技术大厅

最近互联网上比较火热的话题固然是关于WEB2.0的运用,其中AJAX又是WEB2.0的核心之一。AJAX是Asynchronous JavaScript and XML 的缩写。它并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在1在同共的协作中发挥各自的作用,它包括:使用XHTML和CSS标准化出现;使用DOM实现动态显示和交互;使用XML和XSLT进行数据交换与处理;使用XMLHttpRequest进行异步数据读取;最后用 JavaScript绑定和处理所有数据。

Ajax的工作原理相当于在用户和服务器之间加了个中间层,使用户操作与服务器响应异步化。这样把之前的一些服务器负担的工作转嫁到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,从而到达勤俭ISP的空间及带宽租用本钱的目的。

本人在我要OK网 运用了一些AJAX技术。效果真的不错。AJAX 技术很强大。我只是学了点皮毛。

我们以两个验证通行证帐号是不是存在的例子来讲述AJAX在实际中的运用:

(1)用文本字符串的方式返回服务器的响应来验证帐号是不是存在;

(2)以XMLDocument对象方式返回响应来验证帐号是不是存在;

首先,我们需要用JavaScript来创建XMLHttpRequest 类向服务器发送一个HTTP要求, XMLHttpRequest 类首先由Internet Explorer以ActiveX对象引入,被称为XMLHTTP。 后来Mozilla﹑Netscape﹑Safari 和其他浏览器也提供了XMLHttpRequest类,不过它们创建XMLHttpRequest类的方法不同。

对Internet Explorer浏览器,创建XMLHttpRequest 方法以下:

xmlhttp_request = new ActiveXObject(LHTTP.3.0); //3.0或4.0 5.0 xmlhttp_request = new ActiveXObject(LHTTP); xmlhttp_request = new ActiveXObject(LHTTP);

由于在不同Internet Explorer浏览器中XMLHTTP版本可能不一致,为了更好的兼容不同版本的Internet Explorer浏览器,因此我们需要根据不同版本的Internet Explorer浏览器来创建XMLHttpRequest类,上面代码就是根据不同的Internet Explorer浏览器创建XMLHttpRequest类的方法。

对Mozilla﹑Netscape﹑Safari等浏览器,创建XMLHttpRequest 方法以下:xmlhttp_request = new XMLHttpRequest();

如果服务器的响应没有XML mime-type header,某些Mozilla浏览器可能没法正常工作。 为了解决这个问题,如果服务器响应的header不是text/xml,可以调用其它方法修改该header。

xmlhttp_request = new XMLHttpRequest(); xmlhttp_errideMimeType('text/xml');

在实际运用中,为了兼容多种不同版本的浏览器,一般将创建XMLHttpRequest类的方法写成以下情势:

try{ if( tiveXObject ){ for( var i = 5; i; i-- ){ try{ if( i == 2 ){ xmlhttp_request = new ActiveXObject( LHTTP ); }else{ xmlhttp_request = new ActiveXObject( LHTTP. + i + .0 ); } xmlhttp_tRequestHeader(Content-Typetext/xml); xmlhttp_tRequestHeader(Content-Typegb2312); break;} catch(e){ xmlhttp_request = false; } } }else if( LHttpRequest ){ xmlhttp_request = new XMLHttpRequest(); if (xmlhttp_errideMimeType) { xmlhttp_errideMimeType('text/xml'); } } }catch(e){ xmlhttp_request = false; }

在定义了如何处理响应后,就要发送要求了。可以调用HTTP要求类的open()和send()方法,以下所示:

xmlhttp_en('GET' URL true); xmlhttp_nd(null);

open()的第一个参数是HTTP要求方式GET,POST或任何服务器所支持的您想调用的方式。 依照HTTP规范,该参数要大写;否则,某些浏览器(如Firefox)可能没法处理要求。

第二个参数是要求页面的URL。

第三个参数设置要求是不是为异步模式。如果是TRUE,JavaScript函数将继续履行,而不等待服务器响应。这就是AJAX中的A。

用JavaScript来创建XMLHttpRequest 类向服务器发送一个HTTP要求后,接下来要决定当收到服务器的响应后,需要做甚么。这需要告知HTTP要求对象用哪个JavaScript函数处理这个响应。可以将对象的onreadystatechange属性设置为要使用的JavaScript的函数名,以下所示: xmlhttp_readystatechange =FunctionName;

FunctionName是用JavaScript创建的函数名,注意不要写成FunctionName(),固然我们也可以直接将 JavaScript代码创建在onreadystatechange以后,例如: xmlhttp_readystatechange = function(){

// JavaScript代码段

};

在这个函数中。首先要检查要求的状态。只有当一个完全的服务器响应已收到了,函数才可以处理该响应。XMLHttpRequest 提供了readyState属性来对服务器响应进行判断。

readyState的取值以下:

0 (未初始化)

1 (正在装载)

2 (装载终了)

3 (交互中)

4 (完成)

参考网站: 我要OK网

中国电信股份有限公司无锡分公司

重庆偶吧电子商务有限公司

中视影视制作有限公司

相关阅读