AJax技术

[转]Prototype 1.5 Ajax 使用教程

字号+ 作者:H5之家 来源:H5之家 2015-10-15 11:10 我要评论( )

[转]Prototype 1.5 Ajax 使用教程 2.3 Prototype对Ajax的支持 作为一个Ajax开发框架,Prototype对Ajax开发提供了有力的支持。在Prototype中,与Ajax相关的类和对象包括:Ajax、Ajax.Responsders、Ajax.Base、Ajax.Request、Ajax. PeriodicalUpdater和Ajax.Up

[转]Prototype 1.5 Ajax 使用教程

2.3  Prototype对Ajax的支持

作为一个Ajax开发框架,Prototype对Ajax开发提供了有力的支持。在Prototype中,与Ajax相关的类和对象包括:Ajax、Ajax.Responsders、Ajax.Base、Ajax.Request、Ajax. PeriodicalUpdater和Ajax.Updater,图2-3所示为这些类和对象之间的关系及其常用属性和方法,下面分别对这些类和对象进行介绍。

图2-3  Prototype中Ajax相关类和对象关系示意图

2.3.1  Ajax对象

Ajax对象为其他的Ajax功能类提供了最基本的支持,它的实现如2.2.7节中例2-10所示,其中包括一个方法getTransport和一个属性activeRequestCount。getTransport方法返回一个XMLHttpRequest对象,activeRequestCount属性代表正在处理中的Ajax请求的个数。

2.3.2  Ajax.Base类

Ajax.Base类是Ajax.Request类和Ajax.PeriodicalUpdater类的基类。它提供了3个方法:

l  setOptions:设置Ajax操作所使用的选项。

l  responseIsSuccess:判断Ajax操作是否成功。

l  responseIsFailure:判断Ajax操作是否失败(与responseIsSuccess相反)。

Ajax.Base类的主要作用是提取出一些公用的方法,其他类通过继承的方式使用这些方法,实现代码复用。

2.3.3  Ajax.Request类

这是Prototype中最经常使用的一个Ajax相关类。Ajax.Request类的方法通常是内部使用的,因此这里就不一一列举,有兴趣的读者可以参考Prototype的源代码。这里重点讲讲如何使用Ajax.Request类,首先给出一个最简单的Ajax.Request类的应用示例,如例2-11所示,注意示例中的黑体字。

例2-11  Ajax.Request类应用示例

Ajax.Request测试页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html>

    <head>

        <title>chapter 3</title>

        <script type="text/javascript" language="javascript"

         src="prototype.js" ></script>

        <script type="text/javascript" language="javascript">

        function test() {

            // 创建Ajax.Request对象,发起一个Ajax请求

            var myAjax = new Ajax.Request(

                ‘data.html‘, // 请求的URL

                {

                    method: ‘get‘,  // 使用GET方式发送HTTP请求

                    onComplete: showResponse // 指定请求成功完成时需要执行的方法

                }

            );

        }

       

        function showResponse(response) {

            $(‘divResult‘).innerHTML = response.responseText;

        }

        </script>

    </head>

    <body>

    <input type="button" value="click" />

    <div />

    </body>

</html>

data.html:

<input type="text" />

<input type="button" value="Click Me">

Ajax.Request对象在初始化时需要提供两个参数:第1个参数是将要请求页面的URL,这里使用的data.html是一个普通的HTML静态页面;第2个参数是Ajax操作的选项,在Prototype中并没有专门为Ajax操作选项定义一个类,通常都是像例2-11这样,通过匿名对象的方式设置Ajax操作的参数。在例2-11中,Ajax操作选项具有两个属性:method表示HTTP请求方式,默认是POST方式;onComplete指定了Ajax操作完成以后(即XMLHttpRequest对象的status属性为4时),页面将要执行的函数。当然,Ajax操作还包括很多其他选项,如表2-1所示。

表2-1  Ajax操作选项属性含义

属性名称

含义

method

HTTP请求方式(POST/GET/HEAD)。

parameters

在HTTP请求中传入的URL格式的值列表,即URL串中问号之后的部分。

asynchronous

是否做异步XMLHttpRequest请求。

postBody

在POST请求方式下,传入请求体中的内容。

requestHeaders

和请求一起被传入的HTTP头部列表,这个列表必须含有偶数个项目,因为列表中每两项为一组,分别代表自定义部分的名称和与之对应的字符串值。

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • JQuery实现Ajax加载图片的方法

    JQuery实现Ajax加载图片的方法

    2016-02-24 17:01

  • 判断用户是不是为ajax请求

    判断用户是不是为ajax请求

    2016-02-24 17:00

  • Ajax与WEB开发 by alixixi.com

    Ajax与WEB开发 by alixixi.com

    2016-02-11 11:02

  • jQuery.ajax()的相关参数及使用

    jQuery.ajax()的相关参数及使用

    2016-02-08 16:00

网友点评
d