日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

JQuery之Ajax方法

發(fā)布時間:2023/12/14 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JQuery之Ajax方法 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

1、使用load()方法異步請求數(shù)據(jù)

使用load()方法通過Ajax請求加載服務(wù)器中的數(shù)據(jù),并把返回的數(shù)據(jù)放置到指定的元素中,它的調(diào)用格式為:

load(url,[data],[callback])

參數(shù)url為加載服務(wù)器地址,可選項data參數(shù)為請求時發(fā)送的數(shù)據(jù),callback參數(shù)為數(shù)據(jù)請求成功后,執(zhí)行的回調(diào)函數(shù)。

例如,點擊“加載”按鈕時,向服務(wù)器請求加載一個指定頁面的內(nèi)容,加載成功后,將數(shù)據(jù)內(nèi)容顯示在<div>元素中,并將加載按鈕變?yōu)椴豢捎谩?/p>

?

<body><div id="divtest"><div class="title"><span class="fl">我最愛吃的水果</span> <span class="fr"><input id="btnShow" type="button" value="加載" /></span></div><ul></ul></div><script type="text/javascript">$(function () {$("#btnShow").bind("click", function () {var $this = $(this);$("ul").html("<img src='Images/Loading.gif' alt=''/>").load( "http://www.imooc.com/data/fruit_part.html",function(){$this.attr("disabled", "true");});})});</script></body>

?

2、使用getJSON()方法異步加載JSON格式數(shù)據(jù)

?

使用getJSON()方法可以通過Ajax異步請求的方式,獲取服務(wù)器中的數(shù)據(jù),并對獲取的數(shù)據(jù)進行解析,顯示在頁面中,它的調(diào)用格式為:

jQuery.getJSON(url,[data],[callback])或$.getJSON(url,[data],[callback])

其中,url參數(shù)為請求加載json格式文件的服務(wù)器地址,可選項data參數(shù)為請求時發(fā)送的數(shù)據(jù),callback參數(shù)為數(shù)據(jù)請求成功后,執(zhí)行的回調(diào)函數(shù)。

例如,點擊頁面中的“加載”按鈕,調(diào)用getJSON()方法獲取服務(wù)器中JSON格式文件中的數(shù)據(jù),并遍歷數(shù)據(jù),將指定的字段名內(nèi)容顯示在頁面中。

?

<body><div id="divtest"><div class="title"><span class="fl">我最喜歡的一項運動</span> <span class="fr"><input id="btnShow" type="button" value="加載" /></span></div><ul></ul></div><script type="text/javascript">$(function () {$("#btnShow").bind("click", function () {var $this = $(this);$.getJSON("http://www.imooc.com/data/sport.json",function(data){$this.attr("disabled", "true");$.each(data, function (index, sport) {if(index==3)$("ul").append("<li>" + sport["name"] + "</li>");});});})});</script></body>

?

?

3、使用getScript()方法異步執(zhí)行js文件
使用getScript()方法異步請求并執(zhí)行服務(wù)器中的JavaScript格式的文件,它的調(diào)用格式如下所示:

jQuery.getScript(url,[callback])或$.getScript(url,[callback])

參數(shù)url為服務(wù)器請求地址,可選項callback參數(shù)為請求成功后執(zhí)行的回調(diào)函數(shù)。

例如,點擊“加載”按鈕,調(diào)用getScript()加載并執(zhí)行服務(wù)器中指定名稱的JavaScript格式的文件,并在頁面中顯示加載后的數(shù)據(jù)內(nèi)容,

?

?

?

<body><div id="divtest"><div class="title"><span class="fl">我最喜歡的運動</span> <span class="fr"><input id="btnShow" type="button" value="加載" /></span></div><ul></ul></div><script type="text/javascript">$(function () {$("#btnShow").bind("click", function () {var $this = $(this);$.getScript("http://www.imooc.com/data/sport_f.js",function(){$this.attr("disabled", "true");});})});</script></body>

?

?

4、使用get()方法以get方式從服務(wù)器獲取數(shù)據(jù)

使用get()方法時,采用GET方式向服務(wù)器請求數(shù)據(jù),并通過方法中回調(diào)函數(shù)的參數(shù)返回請求的數(shù)據(jù),它的調(diào)用格式如下:

$.get(url,[callback])

參數(shù)url為服務(wù)器請求地址,可選項callback參數(shù)為請求成功后執(zhí)行的回調(diào)函數(shù)。

例如,當點擊“加載”按鈕時,調(diào)用get()方法向服務(wù)器中的一個.php文件以GET方式請求數(shù)據(jù),并將返回的數(shù)據(jù)內(nèi)容顯示在頁面中,

?

<body><div id="divtest"><div class="title"><span class="fl">我的個人資料</span> <span class="fr"><input id="btnShow" type="button" value="加載" /></span></div><ul></ul></div><script type="text/javascript">$(function () {$("#btnShow").bind("click", function () {var $this = $(this);$.get("http://www.imooc.com/data/info_f.php",function(data){$this.attr("disabled", "true");$("ul").append("<li>我的名字叫:" + data.name + "</li>");$("ul").append("<li>男朋友對我說:" + data.say + "</li>");}, "json");})});</script></body>


5、使用post()方法以post方式向服務(wù)器發(fā)送數(shù)據(jù)

?

與get()方法相比,post()方法多用于以POST方式向服務(wù)器發(fā)送數(shù)據(jù),服務(wù)器接收到數(shù)據(jù)之后,進行處理,并將處理結(jié)果返回頁面,調(diào)用格式如下:

$.post(url,[data],[callback])

參數(shù)url為服務(wù)器請求地址,可選項data為向服務(wù)器請求時發(fā)送的數(shù)據(jù),可選項callback參數(shù)為請求成功后執(zhí)行的回調(diào)函數(shù)。

例如,在輸入框中錄入一個數(shù)字,點擊“檢測”按鈕,調(diào)用post()方法向服務(wù)器以POST方式發(fā)送請求,檢測輸入值的奇偶性,并顯示在頁面中,

?

<body><div id="divtest"><div class="title"><span class="fl">檢測數(shù)字是否大于0</span> <span class="fr"><input id="btnCheck" type="button" value="檢測" /></span></div><ul><li>請求輸入一個數(shù)字 <input id="txtNumber" type="text" size="12" /></li></ul></div><script type="text/javascript">$(function () {$("#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>");});})});</script></body>


6、使用serialize()方法序列化表單元素值

?

使用serialize()方法可以將表單中有name屬性的元素值進行序列化,生成標準URL編碼文本字符串,直接可用于ajax請求,它的調(diào)用格式如下:

$(selector).serialize()

其中selector參數(shù)是一個或多個表單中的元素或表單元素本身。

例如,在表單中添加多個元素,點擊“序列化”按鈕后,調(diào)用serialize()方法,將表單元素序列化后的標準URL編碼文本字符串顯示在頁面中,

<body><div id="divtest"><div class="title"><span class="fl">我的個人資料</span> <span class="fr"><input id="btnAction" type="button" value="序列化" /></span></div><form action=""><ul><li>姓名:<input name="Text1" type="text" size="12" /></li><li><select name="Select1"><option value="0">男</option><option value="1">女</option></select></li><li><input name="Checkbox1" type="checkbox" />資料是否可見 </li><li id="litest"></li></ul></form></div><script type="text/javascript">$(function () {$("#btnAction").bind("click", function () {$("#litest").html($("form").serialize())})})</script></body>

?

?

?

  • Text1=sd&Select1=0&Checkbox1=on

從圖中可以看出,當點擊“序列化”按鈕后,調(diào)用表單元素本身的serialize()方法,將表單中元素全部序列化,生成標準URL編碼,各元素間通過&號相聯(lián)。

?

?

7、使用ajax(0方法加載服務(wù)器數(shù)據(jù)

使用ajax()方法是最底層、功能最強大的請求服務(wù)器數(shù)據(jù)的方法,它不僅可以獲取服務(wù)器返回的數(shù)據(jù),還能向服務(wù)器發(fā)送請求并傳遞數(shù)值,它的調(diào)用格式如下:

jQuery.ajax([settings])或$.ajax([settings])

其中參數(shù)settings為發(fā)送ajax請求時的配置對象,在該對象中,url表示服務(wù)器請求的路徑,data為請求時傳遞的數(shù)據(jù),dataType為服務(wù)器返回的數(shù)據(jù)類型,success為請求成功的執(zhí)行的回調(diào)函數(shù),type為發(fā)送數(shù)據(jù)請求的方式,默認為get。

例如,點擊頁面中的“加載”按鈕,調(diào)用ajax()方法向服務(wù)器請求加載一個txt文件,并將返回的文件中的內(nèi)容顯示在頁面,

?

<body><div id="divtest"><div class="title"><span class="fl">檢測數(shù)字的奇偶性</span> <span class="fr"><input id="btnCheck" type="button" value="檢測" /></span></div><ul><li>請求輸入一個數(shù)字 <input id="txtNumber" type="text" size="12" /></li></ul></div><script type="text/javascript">$(function () {$("#btnCheck").bind("click", function () {$.ajax({url:"http://www.imooc.com/data/check.php",type:"post",dataType:'text',data: {num: $("#txtNumber").val() },success: function (data) {$("ul").append("<li>你輸入的<b> "+ $("#txtNumber").val() + " </b>是<b> "+ data + " </b></li>");}});})});</script></body>

?

?

8、使用ajaxSetup()方法設(shè)置全局Ajax默認選項值

?

?

使用ajaxSetup()方法可以設(shè)置Ajax請求的一些全局性選項值,設(shè)置完成后,后面的Ajax請求將不需要再添加這些選項值,它的調(diào)用格式為:

jQuery.ajaxSetup([options])或$.ajaxSetup([options])

可選項options參數(shù)為一個對象,通過該對象設(shè)置Ajax請求時的全局選項值。

例如,先調(diào)用ajaxSetup()方法設(shè)置全局的Ajax選項值,再點擊兩個按鈕,分別使用ajax()方法請求不同的服務(wù)器數(shù)據(jù),并將數(shù)據(jù)內(nèi)容顯示在頁面,

?

?

?

<body><div id="divtest"><div class="title"><span class="fl">奇偶性和是否大于0</span> <span class="fr"><input id="btnShow_1" type="button" value="驗證1" /><input id="btnShow_2" type="button" value="驗證2" /></span></div><ul><li>請求輸入一個數(shù)字 <input id="txtNumber" type="text" size="12" /></li></ul></div><script type="text/javascript">$(function () {$.ajaxSetup({dataType:"text",type:"post",success:function(data){$("ul").append("<li>你輸入的<b> "+ $("#txtNumber").val() + " </b>是<b> "+ data + " </b></li>");}});$("#btnShow_1").bind("click", function () {$.ajax({data: { num: $("#txtNumber").val() },url: "http://www.imooc.com/data/check.php"});})$("#btnShow_2").bind("click", function () {$.ajax({data: { num: $("#txtNumber").val() },url: "http://www.imooc.com/data/check_f.php"});})});</script></body>


9、使用ajaxStart()和ajaxStop()方法

?

ajaxStart()和ajaxStop()方法是綁定Ajax事件。ajaxStart()方法用于在Ajax請求發(fā)出前觸發(fā)函數(shù),ajaxStop()方法用于在Ajax請求完成后觸發(fā)函數(shù)。它們的調(diào)用格式為:

$(selector).ajaxStart(function())和$(selector).ajaxStop(function())

其中,兩個方法中括號都是綁定的函數(shù),當發(fā)送Ajax請求前執(zhí)行ajaxStart()方法綁定的函數(shù),請求成功后,執(zhí)行ajaxStop ()方法綁定的函數(shù)。

例如,在調(diào)用ajax()方法請求服務(wù)器數(shù)據(jù)前,使用動畫顯示正在加載中,當請求成功后,該動畫自動隱藏,

?

<body><div id="divtest"><div class="title"><span class="fl">加載一段文字</span> <span class="fr"><input id="btnShow" type="button" value="加載" /></span></div><ul><li id="divload"></li></ul></div><script type="text/javascript">$(function () {$(document).ajaxStart(function(){$("#divload").html("正在請求數(shù)據(jù)...");});$(document).ajaxStop(function(){$("#divload").html("數(shù)據(jù)請求完成!");$("#divload").attr("hidden","true");});$("#btnShow").bind("click", function () {var $this = $(this);$.ajax({url: "http://www.imooc.com/data/info_f.php",dataType: "json",success: function (data) {$this.attr("disabled", "true");$("ul").append("<li>我的名字叫:" + data.name + "</li>");$("ul").append("<li>男朋友對我說:" + data.say + "</li>");}});})});</script></body>

?

最近在整理一些資源工具,放在網(wǎng)站分享?http://tools.maqway.com
歡迎關(guān)注公眾號:麻雀唯伊 , 不定時更新資源文章,生活優(yōu)惠,或許有你想看的

?

?

?

總結(jié)

以上是生活随笔為你收集整理的JQuery之Ajax方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。