星期日, 十二月 24, 2006

AJAX初体验之上手篇<2>


3.用ASP来创建XML文档


为了动态显示的需要,就要用到动态网页了,我用的是ASP。


CODE:


<%
' 修改头标识指明这是一个XML文档
Response.ContentType="text/xml"
' ......
strXML="<?xml versin=""1.0"" encoding=""utf-8""?>"
' 这里就按XML的要求来输出数据库里的内容了
strXML=strXML&"....."
' ......
Response.Write(strXML)
%>


4.处理XML文档


在获取了XML文档之后,就要从中获取需要的东西了,假如我从服务获取了下面的XML文档:


CODE:


<?xml version="1.0" encoding="gb2312"?>
<root>
<item>
<title>AJAX Study</title>
<content>Study AJAX</content>
</item>
</root>


我要的是title及content的内容,那么可以像下面这样做:


CODE:


function DoMyXML() {
var xmlDoc,items,title,content;
// 先从XMLHttpRequest对象中得到XML文档
xmlDoc=xmlObj.responseXML;
// 再得到items
items=xmlDoc.getElementsByTagName("item");
// 最后根据TagName来获取想要的内容
// 如果XML文档里有多个item,可以用数组的下标来表示第几个
title=items[0].getElementsByTagName("title")[0].firstChild.data;
content=items[0].getElementsByTagName("content")[0].firstChild.data;
}


好了,现在已经得到我想要的东西,可以把它们显示出来了。


5.输出处理结果


先假定有一个如下的HTML文档用来显示想要输出的内容:


CODE:


<html>
<head>
<title>AJAX Study</title>
</head>
<body>
<div id="mydisplay"></div>
</body>
</html>


这里定义了一个ID为mydisplay的DIV容器用来显示输出内容,好了,再转到JS:


CODE:


//...接DoMyXML;
//content=items[0].....;
var strHTML;
// 先组织好要显示的内容
strHTML="Item title: " + title + "<br />Item content: " + content;
// 获取目标容器,再设置它的innerHTML为要显示的内容
document.getElementById("mydisplay").innerHTML=strHTML;


好了,这些差不多是编写AJAX程序的基础,具体用就看个人发挥了,当然AJAX并不只这些,更多可以参考相关资料。




Technorati :

没有评论: