`
zjq_blog
  • 浏览: 48830 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

prototype.js的使用(2)

    博客分类:
  • JS
阅读更多
4.使用$H()函数
$H()函数把一些对象转换成一个可枚举的和联合数组类似的hash对象
function hash(){
  var a={
    first:10,second:20,third:30
  };
  var h = $H(a);
  alert(h.toQueryString());
}
5.使用$R()函数
$R()是new ObjectRange(lowBound,upperBound,excludeBounds)的缩写
function demoDollar_R(){
  var range = $R(10,20,true);
  range.each(function (value,index){
    alert(value);
  });
}
函数的第三个参数是一个boolean false:10~20,true:10~19
6.使用Try.these()函数
顺序执行一系列方法,直到某个方法成功返回。改方法成功返回那个方法的返回值

以上各个方法并非是prototype.js的核心,这些知识它很小的一部分。下面介绍prototype的核心内容
7.Ajax对象
Ajax对象是一个预定义对象,由这个包创建,为了封装和简化编写AJAX功能涉及的代码。这个对象包含一系列的封装ajax逻辑的类。
(1)Ajax.Request类,为了支持ajax功能,这个包定义了Ajax.Request类。
function searchSales(){
  var empId = $F('lst');
  var year = $F('years');
  var url = 'http://yoursever/app/get_sales';
  var pars = 'empId' + empId + '&year' + year;
  var myAjax = new Ajax.Request(url,{method:'get',parameters:pars,onComplete:showResponse});
}
function showResponse(originalRequest){
  $('result').value = originalReuqest.responseText;
}
Ajax.Request构造方法的第二个参数{method:'get',parameters:pars,onComplete:showResponse}表示一个匿名对象的真是写法。表示传入的
这个对象有一个名为method值为'get'的属性,另一个属性名为parameters包含HTTP请求的查询字符串,和一个onComplete属性/方法包含回调函数
还有一些其他的属性可以在这个对象里面定义和设置,例如asynchronous,可以为true或者false来决定ajax对服务器的调用是否是异步
默认是true。
在XMLHttpRequest中,在HTTP请求期间将报告请求的进度情况。这个进度被描述为四个不同的阶段:Loading,Loaded,Interactive,
或Complete。可以使用Ajax.Request对象在任何阶段调用自定义的方法。Complete是最常用的一个。想调用自定义的方法只需要在请求
的选项参数中名为onXXXXX属性/方法提供自定义的方法对象。就如同onComplete。传入的方法将会被用一个参数调用,这个参数是
XMLHttpRequest对象自己。用这个对象去得到返回的数据并且或许检查包含有在这次调用中的HTTP结果代码的status属性。还有另外两个
选项用来处理结果。我们可以在onSuccess选项传入一个方法,当ajax无误的执行完调用,相反,也可以在onFailure选项传入一个方法
,当服务器发现错误时调用,正如onXXXX选项传入的方法一样,这两个在被调用的时候也传入一个带有ajax请求的XMLHttpRequest对象。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics