Ajax:Asynchronous javascript and xml,实现了客户端与服务器进行数据交流过程同时是异步发送请求。
使用技术的好处是:不用页面刷新,并且在等待页面传输数据的同时可以进行其他操作。 Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面。
那如何使用Ajax技术?

首先,有客户端事件触发Ajax事件。

然后,创建xmlHttpRequest对象,根据浏览器不同,创建的xmlHttpRequest对象不同。用open调用,用send发送请求给Ajax引擎。

最后,执行完毕后,把结果返回给客户端。

测试代码如下:

 创建xmlHttpRequest对象:

function createXMLHttpRequest() {

//表示当前浏览器不是ie,如ns,firefox

if(window.XMLHttpRequest) {

xmlHttp = new XMLHttpRequest();

} else if (window.ActiveXObject) {

xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

}

}

客户端事件触发:  

function validate(field){

if(trim(field.value).length!=0)

{

//创建XMLHttpRequest

createXMLHttpRequest() ;

var url="user_validate.jsp?userId=" + trim(field.value)+"&timestampt="+new Date().getTime();

xmlHttp.open("GET", url, true);

//方法地址。处理完成后自动调用,回调。

xmlHttp.onreadystatechange=callback ;

xmlHttp.send(null);//将参数发送到Ajax引擎

} else{ document.getElementById("userIdSpan").innerHTML = "";    }

}

   结果返回操作:

function callback(){

{

alert(xmlHttp.readyState);

if(xmlHttp.readyState==4){ //Ajax引擎初始化

if(xmlHttp.status==200){ //http协议成功

//alert(xmlHttp.responseText);

document.getElementById("userIdSpan").innerHTML = "<font color='red'>" + xmlHttp.responseText + "</font>";

}else{

alert("请求失败,错误码="+xmlHttp.status);

}

}

}

 
												

ajax的原理及实现方式的更多相关文章

  1. ajax轮询原理及其实现方式

    ajax轮询原理及其实现方式 ajax轮询的两种方式 方式1:设定一个定时器,无论有无结果返回,时间一到就会继续发起请求,这种轮询耗费资源,也不一定能得到想要的数据,这样的轮询是不推荐的. 方式2: ...

  2. Ajax工作原理

    在写这篇文章之前,曾经写过一篇关于AJAX技术的随笔,不过涉及到的方面很窄,对AJAX技术的背景.原理.优缺点等各个方面都很少涉及null.这次写这篇文章的背景是因为公司需要对内部程序员做一个培训.项 ...

  3. 关于Ajax工作原理

    1.ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax ...

  4. Ajax工作原理(转)

    1.ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax ...

  5. ajax请求原理及jquery $.ajax封装全解析

    .ajax原理: Ajax的原理简单来说通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面.这其中最关键的一步就是从服务器获得 ...

  6. Ajax 技术原理(转)

    Ajax 技术原理 2010-01-04 原文出处:http://www.nowamagic.net/ajax/ajax_AjaxPrinciple.php 在写这篇文章之前,曾经写过一篇关于AJAX ...

  7. (转)Ajax的原理和应用

    1.ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth.google suggest以及gmail等对ajax技术的广泛应用,催生了ajax ...

  8. aJax学习之Ajax工作原理

    转自:http://www.cnblogs.com/mingmingruyuedlut/archive/2011/10/18/2216553.html 在写这篇文章之前,曾经写过一篇关于AJAX技术的 ...

  9. ajax请求原理

    首先分析使用ajax时候有那些不确定的因素 请求:1 请求的方式不确定 2 请求的地址不确定 3 请求是否异步不确定 4 发送的数据不确定 响应:5 返回的数据不确定 6 响应成功之后 需要处理的业务 ...

随机推荐

  1. js需要学习的

    1.js作用域 2.html5和css3 3.js面向对象 4.js原生ajax 5.js与后端交互 6.html5手机移动端页面练习 7.jquery中的jQuery UI框架和jQuery Eas ...

  2. js中引号("")中间设置变量

  3. show global status和show variables mysql 优化

    mysql> show global status; 可以列出MySQL服务器运行各种状态值,我个人较喜欢的用法是show status like '查询值%'; 一.慢查询 mysql> ...

  4. drop有default constraint的column

    有时候我们在drop column的时候,会遇到一些default constraints而不能drop,如果我们已经知道constraint name,则可以用下面的语句先把constraint r ...

  5. http://blog.csdn.net/ce123_zhouwei/article/details/7364294

    http://blog.csdn.net/ce123_zhouwei/article/details/7364294

  6. Activiti 获取定义

    ProcessDefinitionEntity d = (ProcessDefinitionEntity)((RepositoryServiceImpl)repositoryService).getD ...

  7. Android——电脑蓝屏重启后,studio无法认出Android环境 setup JDK(缓存!缓存!缓存)

    电脑蓝屏重启后,studio无法认出Android环境 setup JDK 问题重现:因为工作问题,需要用到模拟器,然后创建了模拟器后开启了漫长的等待之旅,两三分钟之后win8蓝屏,重启,再次打开,依 ...

  8. 启动hive出错,提示没有权限

    报错信息如下: which: no hbase in (/usr/local/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/bin:/usr/local/hive/bin:/ ...

  9. C++实现八皇后问题

    C++实现八皇后问题 #include <iostream> using std::cout; using std::endl; #include <iomanip> usin ...

  10. 论SparkStreaming的数据可靠性和一致性

    转自: http://www.csdn.net/article/2015-06-21/2825011 摘要:眼下大数据领域最热门的词汇之一便是流计算了,而其中最耀眼的无疑是来自Spark社区的Spar ...