Ajax入门实例(ASP+AJAX)
转自:http://hi.baidu.com/jianshisi/item/a02bdc1dff8899426926bba2
现在在网站开发中都很流行用AJAX技术处理页面信息,确实页面无刷新给用户带来了很大的友好界面。今天写个AJAX的入门实例,目的是让初学AJAX的朋友一看就懂。本例子简单地说明AJAX是怎么异步通信的。做这东西大概的思路是这样的:至少有2个页面,一个显示,一个处理数据。其中一个要为.asp的文件(因为要做为处理传过来的值。本例子是ASP+AJAX,所以是.asp文件)本例中主要是放在AJAX的操作上即javascript文件。
=====显示页面:=======
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<Meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>AJAX技术实例入门</title>
<script language="javascript" type="text/javascript">
/*
johnny于2008-6-15写
QQ:40623660
说明:AJAX创建要考虑到不同的浏览器问题,我这里列了IE和非IE的创建方式。
创建好了就打开实例--发送--接收(一般是一个函数)并显示处理页面返回的信息(根据不同的状态显示不同的信息)。
*/
function createAjax(){
var http;
if (window.ActiveXObject){
http=new ActiveXObject("Microsoft.XMLHTTP") ? new ActiveXObject("Microsoft.XMLHTTP") : new ActiveXObject("Msxml2.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
http=new XMLHttpRequest();
}
return http;
}
var ajax=createAjax();
function show(){
ajax.open("GET","a.asp?text="+escape(document.getElementById("text").value)+"&num="+Math.random(),true);
ajax.send(null);
ajax.onreadystatechange=getmessage;
}
function getmessage(){
var html;
if (ajax.readyState==4){
if (ajax.status==200){
html=ajax.responseText;
document.getElementById("showinfo").innerHTML=html;
}else alert('status is:'+ajax.status);
}else{
document.getElementById("showinfo").innerHTML="数据读取中...";
}
}
</script>
</head>
<body>
<table width="360" cellpadding="2" style="border:solid 1px #FF0000;">
<tr>
<td width="140"><input name="text" type="text" id="text" size="20" /></td>
<td width="187"><div id="showinfo"></div></td>
</tr>
<tr>
<td colspan="2"><input name="button" type="button" value="点我显示信息" onclick="show()" /></td>
</tr>
</table>
</body>
</html>
==========a.asp===ASP处理页面==========
<%
response.Charset="gb2312"
response.ContentType="text/html"
uName=Trim(request.QueryString("text"))
if uName="" then
response.Write("<strong>你还没输入信息!</strong>")
else
if uName="johnny" then
response.Write("johnny is a good boy!")
else
response.Write(uName&" 不存在!")
end if
end if
%>
===========运行页面============
原文链接:https://www.f2er.com/ajax/164912.html现在在网站开发中都很流行用AJAX技术处理页面信息,确实页面无刷新给用户带来了很大的友好界面。今天写个AJAX的入门实例,目的是让初学AJAX的朋友一看就懂。本例子简单地说明AJAX是怎么异步通信的。做这东西大概的思路是这样的:至少有2个页面,一个显示,一个处理数据。其中一个要为.asp的文件(因为要做为处理传过来的值。本例子是ASP+AJAX,所以是.asp文件)本例中主要是放在AJAX的操作上即javascript文件。
=====显示页面:=======
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<Meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>AJAX技术实例入门</title>
<script language="javascript" type="text/javascript">
/*
johnny于2008-6-15写
QQ:40623660
说明:AJAX创建要考虑到不同的浏览器问题,我这里列了IE和非IE的创建方式。
创建好了就打开实例--发送--接收(一般是一个函数)并显示处理页面返回的信息(根据不同的状态显示不同的信息)。
*/
function createAjax(){
var http;
if (window.ActiveXObject){
http=new ActiveXObject("Microsoft.XMLHTTP") ? new ActiveXObject("Microsoft.XMLHTTP") : new ActiveXObject("Msxml2.XMLHTTP");
}
else if(window.XMLHttpRequest)
{
http=new XMLHttpRequest();
}
return http;
}
var ajax=createAjax();
function show(){
ajax.open("GET","a.asp?text="+escape(document.getElementById("text").value)+"&num="+Math.random(),true);
ajax.send(null);
ajax.onreadystatechange=getmessage;
}
function getmessage(){
var html;
if (ajax.readyState==4){
if (ajax.status==200){
html=ajax.responseText;
document.getElementById("showinfo").innerHTML=html;
}else alert('status is:'+ajax.status);
}else{
document.getElementById("showinfo").innerHTML="数据读取中...";
}
}
</script>
</head>
<body>
<table width="360" cellpadding="2" style="border:solid 1px #FF0000;">
<tr>
<td width="140"><input name="text" type="text" id="text" size="20" /></td>
<td width="187"><div id="showinfo"></div></td>
</tr>
<tr>
<td colspan="2"><input name="button" type="button" value="点我显示信息" onclick="show()" /></td>
</tr>
</table>
</body>
</html>
==========a.asp===ASP处理页面==========
<%
response.Charset="gb2312"
response.ContentType="text/html"
uName=Trim(request.QueryString("text"))
if uName="" then
response.Write("<strong>你还没输入信息!</strong>")
else
if uName="johnny" then
response.Write("johnny is a good boy!")
else
response.Write(uName&" 不存在!")
end if
end if
%>
===========运行页面============
本例子简单,但却说明了AJAX是如何异步通信的。希望对你有帮助。关于AJAX的优缺点大家可以自己查下。