学习Ajax有一两星期了,却一直没动手做些东西,今天练习了一下,感觉了一下效果,嘿嘿,不错!!!!!!!!
(1)html文件:
<html>
<head>
<title>ReadRSS</title>
<script src="js/prototype.js"></script>
<script>
function send_Request(url)
{
var request_url = 'AJAXProxy.asp'; //用于代理的页面,调用发送时指定该页面。
var request_pars = 'RSS_URL=' + url;
alert(request_pars);
var myAjax = new Ajax.Request(
request_url,
{
method:'get',
parameters:request_pars,
asynchronous:true, //true---异步;false---同步.默认为true
onComplete:processRequest
}
);
}
function processRequest(XML_Http_Request){
var results = XML_Http_Request.responseXML;
var item = null;
var userName = null;
var items = results.getElementsByTagName("userName");
for(var i = 0; i < items.length; i++) {
item = items[i];
userName=item.firstChild.nodeValue;
var cell = document.createElement("div");
cell.innerHTML = "<li>"+userName+"</li><br>";
//document.getElementById("result").appendChild(cell);
$("result").appendChild(cell);
}
}
var myGlobalHandlers = {
onCreate:function (){
Element.show('systemWorking');
},
onComplete:function (){
if(Ajax.activeRequestCount == 0){
Element.hide('systemWorking');
}
}
};
Ajax.Responders.register(myGlobalHandlers);
</script>
</head>
<body onLoad="javascript:send_Request('AJAXProxy.asp?_URL=http://localhost/jitdemo/pklist.xml');">
<div id='systemWorking'>Loading...</div>
<div id="result"></div>
<DIV id="div1"><a href="#" οnclick="new Element.toggle('div2')">交替隐藏域</a></DIV>
<DIV id="div2">Hello!</DIV>
</body>
</html>
(2)AJAXProxy.asp本来想用jsp,但懒得启动tomcat,就简单用asp试试.
<%@LANGUAGE="JAVASCRIPT" CODEPAGE="936"%>
<%
var http1=Server.CreateObject("Microsoft.XMLHTTP");
var _URL=Request("_url");
http1.Open("GET",_URL,false);
Response.ContentType="text/xml";
http1.send(null);
if(http1.readyState==4){
Response.BinaryWrite(http1.Responsebody);
}
http1=null;
%>
(3)pklist.xml
<?xml version="1.0" encoding="GBK"?>
<pklist lastModi="2007-01-01">
<cert index="1">
<userName>EncryptCert</userName>
<SN>1c4791f174941cfd</SN>
<DN>EncryptCert</DN>
</cert>
<cert index="2">
<userName>李四6666</userName>
<SN>2c4791f174941cfd</SN>
<DN>李四6666</DN>
</cert>
<cert index="3">
<userName>五台山</userName>
<SN>521777e2bd9f3098</SN>
<DN>企业用户</DN>
</cert>
</pklist>
前面两个页面在同一个域,后面的xml可以在其它域,以实现跨域访问。
更换xml文件时,在修改文件(1)里的processRequest里的结点名称TagName,对应新xml的结构。
OK!都来试试吧。
下次将写一些关于DWR的应用。