AJax技术

Ajax学习笔记(二)

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

二、prototype库详解1、prototype库的使用//导入下载好的prototype.js文件script type= text/javascript src= prototype.js /script//在自己的js中直接使用Proto

二、prototype库详解

1、prototype库的使用

//导入下载好的prototype.js文件

<script type="text/javascript" src="prototype.js"></script>

//在自己的js中直接使用Prototype对象

<script type="text/javascript">

document.writeln("Prototype库的版本是:"+Prototype.Version+"<br/>");

document.writeln("我的库的版本是:"+zpc.version+"<br/>"+"我的年龄:"+zpc.age+"<br/>");

document.writeln("客户端是否为Chrome:"+Prototype.Browser.WebKit+"<br/>");

alert(Prototype.K("测试字符串"));

</script>

2、使用$()函数和$$()函数访问文档中的HTML元素

   $(String tagName)函数:直接获得id为tagName的HTML元素

   $(String tagName1,String tagName2):获得id为tagName1、tagName2的HTML元素数组

   $$()的参数是一个或多个合法的CSS选择器

3、$A()函数用于将一个参数转换成数组,如果传入的参数不是一个集合,而是一个普通变量,$A()函数将返回一个空数组,而不是只有一个元素的数组。

   $F()函数用于获取表单控件的值,比如input、textArea、select等元素。

   $()函数是获取HTML元素本身,而$F()函数用于获取表单控件的值,而不是表单域本身。

   可以这样说:$()函数返回的是一个HTML元素对象,而$F()函数返回的只是一个字符串值。

   使用这两个函数时都应该让HTML元素的id属性和name属性保持一致(保证IE)

4、$H()函数:将js对象转换成Hash对象,Hash类是Prototype库提供的一个类,类似于Java语言里的Map数据结构

5、使用Try.these()函数允许传入一些列的函数作为参数,它将依次调用传入的一系列函数,找到第一个能成功返回值的函数,并将该函数的返回值作为Try.these()函数的返回值。如果这一系列函数都没有返回值,Try.these()将会返回undefined

   Try.these()的参数只能是函数引用

6、Prototype的json支持为Date、Object、Array、Hash、Number类增加了toJSON()方法,用于将这些对象转换成一个JSON格式的字符串

   此外,Prototype还为String类增加了如下三个与JSON相关的方法:

   isJSON():该方法判断指定字符串是否为合法的JSON字符串

   evalJSON([sanitize=false]):将指定的字符串转换成json对象

   toJSON():用于将字符串转换成JSON字符串

 

例程:<body><script type="text/javascript"> var date=new Date(); document.writeln("日期是:"+date.toLocaleString()+"<br/>"); document.writeln("日期对应的JSON字符串为:"+date.toJSON()+"<br/>"); var p={ name:"zpc", age:25 }; //将对象转换成JSON字符串 document.writeln("普通对象的JSON字符串为:"+Object.toJSON(p)+"<br/>"); var books=["周鹏程","鸟鹏"]; //document.writeln("数组的JSON字符串为:"+books.toJSON()+"<br/>"); var hash=$H({name:'周鹏程',age:34}); document.writeln("Hash对象的JSON字符串为:"+hash.toJSON()+"<br/>"); //document.writeln("数值的JSON字符串为:"+(45).toJSON()+"<br/>"); var str='{"name":"zpc","gender":"male"}'; //将一个json格式的字符串转换成JSON对象 var zpc=str.evalJSON(); document.writeln("zpc对象的名字:"+zpc.name+"<br/>"); document.writeln("zpc对象的性别:"+zpc.gender+"<br/>");</script></body>

7、使用Element对象:该类提供了一些方法简化HTML元素的操作

8、使用ObjectRange对象:一个ObjectRange对象代表一个范围

例程:<body><script type="text/javascript" src="prototype-1.6.0.3.js"></script> <script type="text/javascript"> //直接用new创建一个ObjectRange对象 var range=new ObjectRange(2,9,true);//true表示不包含9 range.each(function(ele,index){ document.writeln("索引"+index+"处的值:"+ele+"<br/>") }); //使用$R()函数创建一个ObjectRange对象 var ra=$R('a','g'); document.writeln($A(ra)); alert(ra.include('b'));</script></body>

9、使用Form.Element操作表单控件

   Form.Element专门用于操作表单控件,使用它可以激活表单控件,可以判断某个表单控件是否为空,可以清空系列表单控件

10、使用Form操作表单。注意:Form.Element是操作指定表单控件,而Form是操作指定表单(或者表单内的全部控件)

11、使用Hash对象

    Hash对象是一种类似于Java中Map的数据结构,它是一个Key-Value对的集合。Hash对象的每个Item是包含两个元素的数组,前一个是Key后一个是Value

    借助$H函数可以将一个普通的对象转换为Hash对象,再借助Hash对象的方法可以方便的访问该对象的全部属性和属性值

12、使用Event来简化事件编程

 

<body> <table border="1"> <tr><td><div><input id="ok" type="button" value="click me"/></div>table的Inner</td></tr> </table> <div id="d">e</div> <script type="text/javascript" src="prototype.js"></script> <script type="text/javascript"> Event.observe("ok","click",function(event){ document.writeln("是否为左击事件:"+event.isLeftClick()); document.writeln("事件源:"+event.element().value); document.writeln("最近的td元素:"+event.findElement("td").innerHTML); }); $("d").innerHTML="<h2>哈哈<h2>"; </script></body>//上面的代码不在使用原始的事件模型,而是使用基于Event提供的事件简化,这种简化消除了事件模型的浏览器差异。

13、使用Template

    有时我们要生成多个字串,这些字串中有大量重复内容,只有少量关键部分发生变化,这时就可以借助Template对象了

 

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

网友点评