精彩专题推荐:建站之入门课 建站之必修课 建站之关键课 网站价值所在 流量提高专题 css+div 标准 个人网站打造全过程
返回建站学首页
导航:
建站首页 | 网站设计 | 网站开发 | 网站运营 | 网页软件 | 建站指南 | 搜索优化 | 图像处理 | 视频教程 | 书籍教程 | 建站专题
当前位置:首页>网站开发>ajax教程>正文

如何使用ajax开发web应用程序[1]


来源: 时间:06-12-24 点击: 点击这里收藏本文
作者:Jonathan Fenocchi
译者:Sheneyan(子乌)
英文原文:http://webreference.com/programming/javascript/jf/column12/index.html
中文译文:http://sheneyan.com/g.php/tech/article/ajax/1.html

  在过去,由于为了获得新数据而不得不重新加载web页面(或者加载其他页面)导致web应用程序发展被限制。虽然有其他方法可用(不加载其他页面),但是这些技术都没有被很好地支持而且有bug成灾的趋向。在过去的几个月里,一个过去并不被广泛支持的技术已经被越来越多的web冲浪者(web surfers??是指浏览器还是浏览者?)所接受,它给了开发者更多的自由开发先进的web应用程序。这些通过javascript来异步取得xml数据的应用程序,被亲切的称为Ajax应用程序。在这篇文章中,我将会解释如何通过Ajax来取回一个远程的XML文件并更新一个web page,并且随着这个系列的继续,我将讨论更多的方法,使用ajax技术将你的web应用程序提升到一个新的层次。

  这第一步就是创建一个带一些数据的XML文件。我们将这个文件命名为data.xml。它是一个简单的XML文件,而在一个真实的程序中,它会复杂许多,但对于我们的例子来说,简单明了是最合适地。

<?xml version="1.0" encoding="UTF-8"?>
<root>
  <data>
    这是一些示例数据,它被保存在一个XML文件中,并被JavaScript取回。
  </data>
</root>


  现在让我们创建一个简单的web页面包含一些示例数据。这个页面将是我们的js脚本所在,并且这个页面将会让用户们访问柄看到Ajax脚本的运行。我们把它命名为ajax.html

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" 
 "http://www.w3.org/TR/html4/strict.dtd"> 
<html lang="zh" dir="ltr"> 
 <head> 
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
  <title>使用ajax开发web应用程序 - 示例</title> 
 </head> 
 <body> 
  <h1>使用ajax开发web应用程序</h1> 
  <p>这个页面演示了AJAX技术如何通过动态读取一个远程文件来更新一个网页的 
        内容--不需要任何网页的重新加载。注意:这个例子对于禁止js的用户来说没有效果。</p> 
  <p id="xmlObj"> 
  这是一些示例数据,它是这个网页的默认数据 <a href="data.xml
  title="查看这个XML数据."  
        onclick="ajaxRead('data.xml'); this.style.display='none'; return false">查看XML数据.</a> 
  </p> 
 </body> 
</html>


  注意,对于那些没有javascript的用户,我们直接链接到data.xml文件。对于那些允许运行javascript的用户,函数ajaxRead将被运行,这个链接被隐藏,并不会被转向到那个data.xml文件。函数ajaxRead现在还没定义。所以如果你要检验上面的示例代码,你会得到一个javascript错误。让我们继续并定义这个函数(还有其他的),让你能够看到ajax是如何工作的,下面的脚本要放到你的head标签里:

<script type="text/javascript">
<!--
function ajaxRead(file){
  var xmlObj = null;
  if(window.XMLHttpRequest){
      xmlObj = new XMLHttpRequest();
  } else if(window.ActiveXObject){
      xmlObj = new ActiveXObject("Microsoft.XMLHTTP");
  } else {
      return;
  }
  xmlObj.onreadystatechange = function(){
    if(xmlObj.readyState == 4){
       updateObj('xmlObj', xmlObj.responseXML.getElementsByTagName('data')[0].firstChild.data);
     }
    }
    xmlObj.open ('GET', file, true);
    xmlObj.send ('');
  }
  function updateObj(obj, data){
   document.getElementById(obj).firstChild.data = data;
  }
  //-->
 </script>


  这堆代码有点多,让我们一点点的进行。第一个函数叫做ajaxRead-也就是我们在页面的查看XML数据链接中调用的函数,我们定义了一个xmlObj变量-这将作为客户端(用户正在查看的这个web页面)以及服务端(web站点本身)之间的中间件。我们在一个if/else块中定义这个对象:
9 7 3 1 2 3 4 8 :

  把此文章收藏到:          
广而告之
文章搜索
  • Google JZxue.Com

关于我们 | 联系我们 | 友情链接 | 网站地图
Copyright © 2005 - 2006 建站学 All rights reserved.