jQuery基础教程第六章学习

时间:2021-03-22 18:46:24

ajax

这章基本都是在讲在不刷新页面的条件下加载数据,分别有html,javascript,json,xml这四种数据

html,没什么好说的,结构最熟悉了。

javascript,以每个数组元素为对象来创建,然后用.each()来解析。

json,把数组的定义和对象的定义结合一起,如
[
  {
    "term": "BACCHUS",
    "part": "n.",
    "definition": "A convenient deity invented by the ancients as an excuse for getting drunk.",
    "quote": [
      "Is public worship, then, a sin,",
      "That for devotions paid to Bacchus"
    ],
    "author": "Jorace"
  },
  {
    "term": "BACKBITE",
    "part": "v.t.",
    "definition": "To speak of a man as you find him when he can't find you."
  }
]
其中,json的格式非常重要,如果其中有方括号、花括号、引号和逗号出现错误,文件就不会加载,而且大多数浏览器不会出现错误信息,脚本只是默默地彻底中止运转。

xml,在可移植性上可谓是无与伦比,但文件体积相对较大,jQuery有专门的方法解析,解析后会返回xml DOM树,便可以利用jQuery的遍历功能了。


对于数据的操作方法:

.load(‘a.html’):在函数前面加入所要插入的节点,方法就会直接把内容插入该元素中

.load('a.html .entry'):插入内容筛选出class=.entry的元素


$.getJSON():解析.json文件,将结果放在回调函数的参数中,如:

$.getJSON('b.json',function(data){......})


$.getScript('c.js'):直接加载js文件


$.get('d.xml',function(data){....var $entry=$(data).....):解析出xml文件得到xml DOM树,然后将其封装在jQuery中,然后利用jQuery的遍历能力


ajax操作:

$.get('url',{'term':$(this).text()},function(data));见名知义,方法是以get方式向服务器发送请求,中间是发送的参数,最后的data是接受参数


$.post('url',{'term':$(this).text()},function(data)):和上面的一样,有一点不同的是提交方式,这个方法是用post提交的。


.serialize():这个方法可以直接序列化表单值,创建url编码的文本字符串,如:$('form').serialize()得到类似这样的数据a=1&b=2&c=3&d=4&e=5


.ajaxStart():在ajax请求开始尚且未进行传输时触发。


.ajaxStop():在ajax请求结束时触发。


使用JSONP加载远程数据:使用$.getJSON()方法,如$.getJSON(url+'?callback=?',function(data)),利用其中的占位符?便可。


低级的ajax方法:$.ajax(.....),里面有着更多的参数,为操作带来更灵活方法。


.ajaxSetup(......):修改ajax方法时的每个选项的参数的默认值,但在$.ajax()的调用中仍然会覆盖其做的操作。