AJax技术

Ajax学习(1)-简单ajax案例

字号+ 作者:H5之家 来源:H5之家 2015-09-19 19:24 我要评论( )

1.什么是Ajax?Ajax是AsynchronousJavaScriptandXML的缩写,即异步的Javascript和XML。可以使用Ajax在不加载整个网页的情况下更新部分网页信息。Ajax以XMLHttpRe

Ajax学习(1)-简单ajax案例,有需要的朋友可以参考下。


1.什么是Ajax?

2.Ajax应用的处理流程:

3.下面是一个使用简单的Ajax的小例子:

首先使用JavaScript创建XMLHttpRequest对象,下面是创建XML对象的JS代码:

JavaScript Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

varxmlreq;

functioncreatXMLHttpRequest(){
if(window.XMLHttpRequest){
xmlreq=newXMLHttpRequest(); //IE7以上版本及其它浏览器
}elseif(window.ActiveXObject){
try{
xmlreq=newActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlreq=newActiveXObject("Micorosoft.XMLHTTP");//IE5、IE6
}catch(e){
}
}
}

}

然后是使用XMLHttpRequest对象向服务器发送请求,代码如下:

JavaScript Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14

functionsendRequest()
{

creatXMLHttpRequest();//创建XMLHttpRequest对象

varuri="index.jsp";//定义请求url

xmlreq.open("POST",uri,true);//打开与服务器的连接

xmlreq.onreadystatechange=changeProcess;//定义XMLHttpRequest对象的状态改变时的处理函数

xmlreq.send(null);//发送请求
}

定义XMLHttpRequest状态改变时的事件处理函数(回调函数),代码如下:

JavaScript Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

functionchangeProcess()
{

if(xmlreq.readyState==4)//XMLHttpRequest对象处理状态为4,表示对象读取服务器响应结束
{

if(xmlreq.status==200)//服务器返回状态码为200表示响应完成
{

varstudents=xmlreq.responseText.split("$");

//通过innerHTML属性来动态向DIV中填充内容,运行时删除Id后面_x_x的字符
document.getElementById("mysql").innerHTML=students[0];

document.getElementById("java").innerHTML=students[1];

document.getElementById("tomcat").innerHTML=students[2];
}
}

setInterval(sendRequest, 3000);

服务器对请求处理的jsp文件为index.jsp

JSP Code

1
2
3
4
5
6

<%@pagelanguage="java"import="java.util.*"pageEncoding="ISO-8859-1"%>
<%@pageimport="java.util.Random"%>
<%
Randomrandom=newRandom(System.currentTimeMillis());
out.println(random.nextInt(10)+"$"+random.nextInt(10)+"$"+random.nextInt(10));
%>

页面文件ajax1.html,并且将上述的JavaScript代码均放入此文件中。

html Code

1
2
3
4
5
6

<body>
mysql的学习人数是:<divid="mysql"></div>
java的学习人数是:<divid="java"></div>
Tomcat的学习人数是:<divid="tomcat"></div>
</body>

至此,打开服务器,访问:localhost:8080/工程名/ajax1.html

便可以看到,在页面上的人数会每隔3秒刷新一次。


 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
网友点评