DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> JavaScript入門知識 >> jQuery入門知識 >> JQuery入門技巧 >> 用jQuery的AJax實現異步訪問、異步加載
用jQuery的AJax實現異步訪問、異步加載
編輯:JQuery入門技巧     

本篇文章實現了用jQuery的AJax實現異步訪問和異步加載,具有一定的參考價值,感興趣的小伙伴們可以參考一下。

【異步訪問】

用一個例子用以說明:點擊按鈕,將input內用戶輸入的數據發送給服務端,並將結果返回給頁面。

首先是html承載內容:

<!DOCTYPE html> 
<html> 
<head lang="en"> 
  <meta charset="UTF-8"> 
  <title>AJax異步訪問</title> 
  <script src="js/jquery-2.1.3.min.js"></script> 
  <script src="js/ajaxDemo.js"></script> 
</head> 
<body> 
<input type="text" id="nameValue"> 
<br/> 
<button id="btn">提交</button> 
<p> 
  結果:<span id="result"></span> 
</p> 
</body> 
</html> 

配置服務器:Server.php

<?php 
if(isset($_GET['name'])){ 
  echo "姓名:".$_GET['name']; 
}else{ 
  echo "參數錯誤"; 
} 

ajaxDemo.js實現AJax異步訪問:

$(document).ready(function(){ 
  $("#btn").on("click",function(){ 
    //在與服務器通訊較慢時給用戶提示信息 
    $("#result").text("數據請求中,請稍後..."); 
    //向服務器發送請求(get、post) 
    $.get("Server.php",{name:$("#nameValue").val()},function(data){ 
      $("#result").text(data); 
    }).error(function(){ 
      //當服務器出現異常時 
      $("#result").text("服務器正在維護") 
    }) 
  }) 
}) 

實現效果:

【異步加載】

主要用到load()方法以及getScript()方法,具體以一個例子說明:

在現有html文件中加載一個擬好的片段,以及在片段加載完成之前阻止用戶進一步操作的彈出框。

首先是現有html代碼,無任何內容:

<!DOCTYPE html> 
<html> 
<head lang="en"> 
  <meta charset="UTF-8"> 
  <title>AJax異步加載</title> 
  <script src="js/jquery-2.1.3.min.js"></script> 
  <script src="js/main.js"></script> 
</head> 
<body> 
 
</body> 
</html> 

擬一個js文件getData.js寫一個函數最簡陋的彈出框提示為例:

function getData(){ 
  alert("片段的內容引自新浪體育"); 
} 
擬一個片段box.htm,承載要加載的片段內容:
<div> 
  <h4>中超-耿曉峰失誤拉蒙兩球 申花7輪首敗1-4綠城</h4> 
  <p> 
    北京時間8月11日晚19點35分,2015年中超聯賽第22輪在杭州黃龍體育場開始一場較量, 
    由杭州綠城迎戰上海申花。上半場第7分鐘陳柏良突然冷射,導致耿曉峰接球脫手造成失球, 
    這是中華台北球員(陳昌源在比利時土生土長)在中超聯賽進的首球。 
    第12分鐘申花隊呂征禁區右路左腳凌空射門扳平比分。第25分鐘阿甘在底線附近把球送入禁區, 
    拉蒙頭球得分,第37分鐘阿甘單刀赴會打入一球。 
    第60分鐘阿甘頭球擺渡,拉蒙跟進射門梅開二度。最終杭州綠城4比1戰勝上海申花。 
  </p> 
</div> 

最後寫main.js來異步加載getData.js以及box.htm到現有html文件中。

$(document).ready(function(){ 
  //異步加載js文件 
  $.getScript("js/getData.js").complete(function(){ 
    getData(); 
  }) 
  //異步加載片段 
  $("body").text("加載中...") 
  $("body").load("box.htm",function(url,status,c){ 
    if(status=="error"){ 
      $(this).text("片段加載失敗"); 
    } 
  }); 
 
}) 

最後效果:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved