成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

輕松掌握AJAX(jQuery)異步通信

開發 后端
我們只需要掌握某些主流技術的基本原理和學習的方法即可,有了一套完整的思想,學習什么技術基本上都一樣,有時候遇到一門新技術我們可能用兩三天的時間就能明白其大概的框架,參考說明就能將其應用到我們的項目中來。

上篇博客談了AJAX,下面再說說它的優缺點,我們知道不管是什么技術一般都是因為有它的利用價值才出現的,也就是它們都是有優點的,而有老句話說的是“是藥三分毒”,技術也一樣,什么樣的技術一般也都會有它的缺陷的。項目中只要是它的優點大于它的缺點我們就會去使用它。AJAX的缺點相對于它的優點來說基本上可以忽略,因為它的優點真的是很優秀。

AJAX優點:

1、 使用異步方式與服務器通信,不需要打斷用戶正在進行的操作,具有更加迅速的響應能力。

2、 可以在不更新整個頁面的前提下維護數據(不刷新頁面),給用戶的體驗非常棒。這也是它最大的優點。

3、 AJAX的原則是“按需取數據”,可以最大程度的減少冗余請求,充分利用了客戶端閑置的處理能力,降低服務器的負荷。

AJAX缺點:

1、破壞瀏覽器后退按鈕的正常行為。在動態更新頁面后,用戶無法回到前一個頁面的狀態,這是因為瀏覽器只能記下歷史記錄中的靜態頁面。

2、使用JavaScript作Ajax的引擎,JavaScript的兼容性和Debug需要特別注意。

AJAX讓用戶頁面豐富起來,增強用戶體驗.AJAX也是所有Web開發的必修課.雖然說AJAX技術并不復雜,但是實現方式還是會因為每個開發人員而有所差異。看著它如此之好,是不是感覺使用起來還是不太方便,不太好控制而煩惱呢?不要著急,下面就再介紹一種技術,讓AJAX的異步通信技術更加方便的應用到我們的程序中,那就是Jquery。

jQuery提供一系列AJAX函數來幫助我們統一這種差異, 并且讓調用AJAX更加簡單.jQuery提供了幾個用于發送AJAX請求的函數. 其中最核心的也是最復雜的是jQuery.ajax(),所有的其他AJAX函數都是它的一個簡化調用.當我們想要完全控制AJAX時可以使用此方法, 否則還是使用簡化方法如get, post, load等更加方便。下面我們就來逐一認識這些個方法。

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

載入遠程 HTML 文件代碼并插入至 DOM 中,默認使用 GET 方式傳遞,附加參數時自動轉換為 POST 方式。jQuery 1.2 中,可以指定選擇符,來篩選載入的 HTML 文檔,DOM 中將僅插入篩選出的 HTML 代碼。語法形如 "url #some > selector"。

參數:

示例:

描述: 加載 feeds.html 文件內容。

jQuery 代碼:

  1. $("#feeds").load("feeds.html"); 

2.    jQuery.get(url, [data], [callback], [type] )

通過遠程 HTTP GET 請求載入信息,這是一個簡單的 GET 請求功能以取代復雜 $.ajax 。請求成功時可調用回調函數。如果需要在出錯時執行函數,請使用 $.ajax。

參數:前面的解釋參見1

type (可選)String

返回內容格式,xml,html, script, json, text, _default。

示例:

描述: 顯示 test.php 返回值(HTML 或 XML,取決于返回值)。

jQuery 代碼:

  1. $.get("test.php",function(data){  
  2.   alert("Data Loaded: " + data);  
  3. }); 

描述: 顯示 test.cgi 返回值(HTML 或 XML,取決于返回值),添加一組請求參數。

jQuery 代碼:

  1. $.get("test.cgi",{ name: "John", time: "2pm" },  
  2.   function(data){  
  3.     alert("Data Loaded: " + data);  
  4.   }); 

3.    jQuery.getJSON(url, [data], [callback] )

通過 HTTP GET 請求載入 JSON 數據,在 jQuery 1.2 中,您可以通過使用JSONP 形式的回調函數來加載其他網域的JSON數據,如 "myurl?callback=?"。jQuery 將自動替換 ? 為正確的函數名,以執行回調函數。 注意:此行以后的代碼將在這個回調函數執行前執行。

參數:解釋參見1

示例:

描述: 從 test.js 載入 JSON 數據,附加參數,顯示 JSON 數據中一個 name 字段數據。

jQuery 代碼:

  1. $.getJSON("test.js",{ name: "John", time: "2pm" }, function(json){  
  2.   alert("JSON Data: " +json.users[3].name);  
  3. }); 

4.    jQuery.getScript(url, [callback] )

通過 HTTP GET 請求載入并執行一個 JavaScript 文件,jQuery 1.2 版本之前,getScript 只能調用同域 JS 文件。 1.2中,您可以跨域調用 JavaScript 文件。注意:Safari 2 或更早的版本不能在全局作用域中同步執行腳本。如果通過 getScript 加入腳本,請加入延時函數。

參數:參見1

示例:

描述:加載并執行 test.js ,成功后顯示信息。

jQuery 代碼:

  1. $.getScript("test.js",function(){  
  2.   alert("Script loaded andexecuted.");  
  3. }); 

5.    jQuery.post(url, [data], [callback], [type] )

通過遠程 HTTP POST 請求載入信息,這是一個簡單的 POST 請求功能以取代復雜 $.ajax 。請求成功時可調用回調函數。如果需要在出錯時執行函數,請使用 $.ajax。

參數:參見2

示例:

描述1:請求 test.php 網頁,忽略返回值

  1. $.post("test.php"); 

描述2:請求 test.php 頁面,并一起發送一些額外的數據(同時仍然忽略返回值)

  1. $.post("test.php",{ name: "John", time: "2pm" } ); 

描述3:輸出來自請求頁面 test.php 的結果(HTML 或 XML,取決于所返回的內容)

  1. $.post("test.php",function(data){  
  2.    alert("Data Loaded: " + data);  
  3.  }); 

6.    jQuery.ajax(options )

通過 HTTP 請求加載遠程數據。jQuery 底層 AJAX 實現。簡單易用的高層實現見 $.get, $.post 等。$.ajax() 返回其創建的 XMLHttpRequest 對象。大多數情況下你無需直接操作該函數,除非你需要操作不常用的選項,以獲得更多的靈活性。

最簡單的情況下,$.ajax()可以不帶任何參數直接使用。

注意:所有的選項都可以通過 $.ajaxSetup()函數來全局設置。

一些參數介紹請參見:

http://www.cnblogs.com/zengen/archive/2011/03/25/1995761.html

關于jQuery.ajax百度文庫里介紹的非常全面(還有示例):

http://baike.baidu.com/view/6278307.htm

總結:

各種功能的實現隨著技術的不斷革新將會變得越來越簡單,我們只需要掌握某些主流技術的基本原理和學習的方法即可,有了一套完整的思想,學習什么技術基本上都一樣,有時候遇到一門新技術我們可能用兩三天的時間就能明白其大概的框架,參考說明就能將其應用到我們的項目中來。

原文鏈接:http://blog.csdn.net/smszhuang168/article/details/7749881

【編輯推薦】

  1. 使用jQ Ajax時需要注意的一個問題

  2. 3.4.3 JQuery中的AJAX

  3. 新版jQuery p彈出層的ajax登錄

  4. jQuery Ajax請求狀態管理器

  5. jQuery插件之Ajax自動完成

【責任編輯:張偉 TEL:(010)68476606】

責任編輯:張偉 來源: smszhuang168的博客
相關推薦

2023-10-20 08:01:08

2010-01-06 17:51:26

Linux關機命令

2009-10-12 13:18:55

RHEL 4內核

2014-10-30 16:12:55

編程技術算法

2023-09-13 08:00:00

MLOps數據科學

2024-07-11 16:49:43

同步通信異步通信通信

2009-12-16 14:26:19

Linux VMwar

2010-01-04 17:35:32

Silverlight

2009-11-12 10:32:47

ADO.NET技術

2014-10-30 16:34:28

編程技術算法

2014-10-30 16:41:14

編程技術算法

2009-01-18 15:14:00

數據倉庫開發OLTP

2009-12-21 14:10:26

WCF異步調用

2013-12-02 14:40:03

jQueryAjax

2009-11-09 15:28:04

WCF知識結構

2009-11-17 17:38:37

PHP Session

2009-12-14 11:15:34

Linux chgrp

2024-02-27 08:22:56

2009-12-10 11:02:44

PHP函數eval()

2011-01-24 13:20:49

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 成人国产精品久久 | 成人欧美一区二区三区视频xxx | 香蕉av免费| 日韩高清av| 不卡一区二区三区四区 | 日韩精品一区二区三区在线观看 | 视频在线观看一区二区 | 在线观看中文字幕 | 久久久久久国产精品免费免费狐狸 | 亚洲精品电影网在线观看 | 国产伦精品一区二区三区视频金莲 | 欧美日韩免费一区二区三区 | 欧美aⅴ在线观看 | 日本小电影网站 | 一区二区三区欧美在线 | 亚洲精品一区二区 | 91影库| 欧美日韩久久精品 | 国产精品成人一区二区三区夜夜夜 | 免费看a | 日韩在线h | 精品国产一区二区三区久久影院 | 91精品国产综合久久久久久 | 二区在线观看 | 天天玩天天干天天操 | 国产日本精品视频 | 亚洲一区中文字幕 | 国产高清精品一区 | 久久丝袜视频 | 欧美日韩在线播放 | 日韩在线 | 午夜亚洲| 午夜视频精品 | 99精品欧美一区二区蜜桃免费 | av在线视 | 久久国产成人 | 欧美视频网 | 久久久久久免费毛片精品 | 免费视频一区二区 | 国产午夜在线观看 | 久久草在线视频 |