jQuery的AJAX之load()應用執行個體

來源:互聯網
上載者:User

調用load方法的完整格式是:load( url, [data], [callback] ),其中

url:是指要匯入檔案的地址。
data:選擇性參數;因為Load不僅僅可以匯入靜態html檔案,還可以匯入動態指令碼,例如PHP檔案,所以要匯入的是動態檔案時,我們可以把要傳遞的參數放在這裡。
callback:選擇性參數;是指調用load方法並得到伺服器響應後,再執行的另外一個函數。
 
一:如何使用data

 代碼如下 複製代碼

1.載入一個php檔案,該php檔案不含傳遞參數
$("#myID").load("test.php");

//在id為#myID的元素裡匯入test.php運行後的結果

2. 載入一個php檔案,該php檔案含有一個傳遞參數

$("#myID").load("test.php",{"name" : "Adam"});

//匯入的php檔案含有一個傳遞參數,類似於:test.php?name=Adam

3. 載入一個php檔案,該php檔案含有多個傳遞參數。註:參數間用逗號分隔

$("#myID").load("test.php",{"name" : "Adam" ,"site":"61dh.com"});

//匯入的php檔案含有一個傳遞參數,類似於:test.php?name=Adam&site=61dh.com

4. 載入一個php檔案,該php檔案以數組作為傳遞參數

$("#myID").load("test.php",{'myinfo[]', ["Adam", "61dh.com"]});

//匯入的php檔案含有一個數組傳遞參數。

注意:使用load,這些參數是以POST的方式傳遞的,因此在test.php裡,不能用GET來擷取參數。

二:如何使用callback

比如我們要在load方法得到伺服器響應後,慢慢地顯示載入的內容,就可以使用callback函數。代碼如下:

 代碼如下 複製代碼

$("#go").click(function(){

  $("#myID").load("welcome.php", {"lname" : "Cai", "fname" : "Adam", function(){

    $("#myID").fadeIn('slow');}

  );

});


簡單扼要的說就是ajax類比了提交表單的行為,但是把重新整理頁面這件事交由js在後台偷偷完成了。

由此可見ajax其實是一個很容易理解的過程,下面用例子來說明。首先寫一個html頁面:

 代碼如下 複製代碼

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>ajax test</title>
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
jQuery(function($){
  $('button').click(function(){
    $name = $(this).attr('name');
    $('#out').empty().load('test1.php',{ name : $name });
  });
});
</script>
<style type="text/css"></style>
</head>
<body>
<button id="btn-1" name="1">1</button>
<button id="btn-2" name="2">2</button>
<button id="btn-3" name="3">3</button>
<div id="out"></div>
</body>
</html>

有一點html基礎的童鞋可以看出,這裡做了三個按鈕,一個id為out的div,三個按鈕是用來點擊的,#out的div用來接收資料,每次點擊button時先把#out清空,然後插入資訊。

然後來寫php:

 代碼如下 複製代碼

<?php
switch($_POST['name']){
  case 1:
    echo '1 哈哈';
    break;
  case 2:
    echo '2 呵呵';
    break;
  case 3:
    echo '3 活活';
    break;
}
?>

這段代碼使用了php的switch語句,意思就說根據post中name的值來替換輸出的內容,這裡只是個簡單的例子,你也可以通過這個原理讓php進行更複雜的運算或輸出更複雜的內容。

js我直接寫在html裡面了,沒有單獨用一個檔案,用純js寫估計得寫不少,用jQuery就2句搞定,其實一句都行,只是我這兒還是寫成兩句比較好理解一點。
第一句是吧button按鈕中的name值存在一個變數裡面,第二句是使用了jQuery的load函數,告訴php需要哪些資訊,然後取回這些資訊插入到#out中。

這個ajax就這麼完成了,簡單嗎?

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.