乱世狂闪的改造日记!
【原创】Hello World For Ajax!(2)
2007-01-25 10:21:49 / 天气: 阴阴的
/ 心情: 平静
/ 个人分类:学习
如果一个页面同时有多个请求,怎么办?
本文中涉及的程序代码,设计思想和算法,全凭我个人经验所得,并没有经过广大群众测试。也许可能不排除存在BUG,请谨慎使用!
在上一篇里面,如果要弹出一个信息框,需要向服务器发送一个XMLHttpRequest请求。
但实际一个页面中肯定不止一个请求,而且一个请求需要自定两个函数,如果有多个呢?
于是,懒人就有了懒办法。
使用DW先建一个空白Html文件:2.html。
然后插入这段JS代码:
<scrīpt language="javascrīpt" type="text/javascrīpt">
var xmlHttp = false;
try {
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e2) {
xmlHttp = false;
}
}
if (!xmlHttp && typeof XMLHttpRequest != 'undefined') {
xmlHttp = new XMLHttpRequest();
}
</scrīpt>
XMLHttpRequest对象初始化,这些是必须的了,省不了。
接下来,就是今天的主角了(插入到</scrīpt>前面):
function goxmlHttp(obj,url){
//obj:信息返回后,用来装填信息的对象
//url:目标URL
xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange=function(){
if(xmlHttp.readyState==4){
document.getElementById(obj).innerHTML=xmlHttp.responseText;
}
}
xmlHttp.send(null);
}
上次说的两个函数现在合成了一个,接下来试试怎么调用。
<input type="button" ōnclick="goxmlHttp('text','read.asp?id=1')" value="现在日期" />
<input type="button" ōnclick="goxmlHttp('text','read.asp?id=2')" value="现在时间" />
<input type="button" ōnclick="goxmlHttp('text','read.asp?id=3')" value="我的IP" />
<br /><br />
返回信息:<div id="text"></div>
这样,前台就基本OK了。接下来是后台。
文件read.asp的代码:
<%
Response.Buffer = True
Response.ExpiresAbsolute = Now() - 1
Response.Expires = 0
Response.CacheControl = "No-Cache"
Response.AddHeader "Pragma", "No-Cache"
id=request.QueryString("id")
if id="1" then
response.Write(date())
end if
if id="2" then
response.Write(time())
end if
if id="3" then
ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
If ip = "" Then ip = Request.ServerVariables("REMOTE_ADDR")
response.Write(ip)
end if
%>
好了,保存这两个文件,就可以运行了。
推荐
收藏
导入论坛
等级(3)
编辑
管理
查看(71)
评论(0)
评分(0/0)
TAG:
Ajax
学习