1.使用load()方法异步请求数据
使用load()方法通过Ajax请求加载服务器中的数据,并把返回的数据放置到指定的元素中:
1
| load(url,[data],[callback])
|
url:加载服务器地址
data:请求时发送的数据
callback:数据请求成功后,执行的回调函数
1 2 3 4 5 6 7 8 9 10 11
| $(function(){ $('#btnShow').bind('click',function(){ var $this = $(this); $('.content') .html("<img src='Images/Loading.gif' alt='; />") .load("Data/fruit.html", function(){ $this.attr("disabled","true"); }); }); });
|
2.使用getJSON()方法异步加载JSON格式数据
使用getJSON()方法可以通过Ajax异步请求的方式,获取服务器中的数组,并对获取的数据进行解析,显示在页面中
1
| $.getJSON(url,[data],[callback])
|
1 2 3 4 5 6 7 8 9 10 11 12
| $(function(){ $('#btnShow').bind('click',function(){0 var $this = $(this); $.getJSON("Data/sport.json", function(data){ $this.attr('disabled','true'); $.each(data, function(index,sport){ if(index === 3) $('ul').append('<li>' + sport['name'] + '</li>'); }); }); }); });
|
3.使用getScript()方法异步加载并执行js文件
使用getScript()方法异步请求并执行服务器中的JS格式的文件
1
| $.getScript(url,[callback])
|
1 2 3 4 5 6
| $('#btnShow').bind('click',function(){ var $this = $(this); $.getScript('Data/sport.js', function(){ $this.attr('disabled','true'); }); });
|
4.使用get()方法以GET方式从服务器获取数据
1 2 3 4 5 6 7 8
| $('#btnShow').bind('click',function(){ var $this = $(this); $.get("http://www.yizihan.github.io/data/info_f.php", function(data){ $this.attr("disabled","true"); $("ul").append("<li>我的名字叫:" + data.name + "</li>"); $("ul").append("<li>男朋友对我说:" + data.say + "</li>"); }, "json"); });
|
5.使用post()方法以POST方式从服务器发送数据
1
| $.post(url, [data], [callback])
|
1 2 3 4 5 6 7 8
| $("#btnCheck").bind("click",function(){ $.post("http://www.imooc.com/data/check_f.php",{ num:$("#txtNumber").val() }, function(data){ $("ul").append("<li>你输入的<b>" + $("#txtNumber").val() + "</b>是<b>" + data + "</b></li>"); }); });
|
6.使用serialize()方法序列化表单元素值
使用serialize()方法可以就爱那个表单中有name属性的元素进行序列化,生成标准URL编码文本字符串,直接可用于ajax请求
1 2 3 4 5 6
| $('#btnAction').bind("click",function(){ $("#litest").html($("form").serialize()); });
$.post(url, $('form').serialize(), [callback]);
|
7.使用ajax()方法加载服务器数据
ajax()是最底层,功能最强大的请求服务器数据的方法,它不仅可以获取服务器返回的数据,还能向服务器发送请求并传递数值
1 2 3 4 5 6 7 8 9 10 11 12 13
| $("#btnShow").bind("click",function(){ var $this = $(this); $.ajax({ url: "Data/article.txt", data: {num:$("#txtNumber").val()}, dataType: "text", type: "post", success: function(data){ $this.attr("disable", "true"); $("ul").append(data); } }); });
|
8.使用ajaxSetup()方法设置全局Ajax默认选项
使用ajaxSetup()方法可以设置Ajax请求的一些全局选项值,设置成功后,后面的Ajax请求将不需要再添加这些选项值
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| $(function(){ $.ajaxSetup({ dataType: "text", success:function(data){ $("ul").empty().append(data); } }); $("#btnShow_1").bind("click",function(){ $.ajax({url: "Data/article_1.txt"}); }); $("#btnShow_2").bind("click",function(){ $.ajax({url: "Data/article_2.txt"}); }); });
|
9.使用ajaxStart()和ajaxStop()方法
两个方法是绑定Ajax事件。ajaxStart()方法用于在Ajax请求发出前触发函数,ajaxStop()方法用于在Ajax请求完成后触发函数
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| $("#divload").ajaxStart(function(){$(this).show();}); $("#divload").ajaxStop(function(){$(this).hide()}); $("#btnShow").bind("click",function(){ var $this = $(this); $.ajax({ url: "Data/info.php", dataType: "json", success: function(data){ $this.attr("disabled","true"); $("ul").append("<li>我的名字叫:" + data.name + "</li>"); $("ul").append("<li> 常常有人跟我说:" + data.say + "</li>"); } }); });
|