jQuery非同步請求
一直都是知道ajax非同步請求,也一直在用,只是沒有詳細瞭解過。今天簡單瞭解了一下,寫一篇做記錄。
一直都以為ajax非同步請求都是差不多這種形式:
$.ajax({
type: "post/get",
url: "url",
data: {"a":a,"b":b},
dataType: "text",
success: function (data) {........ },
error: function (msg) {........}
});
其實錯了,從API檢視,$.ajax(url,[settings]);才是準確的。最簡單的$.ajax()可以不帶引數直接使用。可以看出除url所有的引數都是可選的。
下面簡單說一下常用的引數:
url:String型別,傳送請求的地址;
type:String型別,預設為“GET”。請求方式有“POST”、“GET”;
async:Boolean型別,預設為true。所有請求均為非同步請求。如果設定為false,則所有請求為同步請求。注:同步請求會鎖住瀏覽器;
timeout:Number型別,請求超時時間。此設定會覆蓋全域性設定;
context:Object型別,這個物件用於設定Ajax相關回調函式的上下文。也就是說讓回撥函式內this指向這個物件(如果不設定這個引數,那麼this就指向呼叫本次AJAX請求時傳遞的options引數)。比如指定一個DOM元素作為context的引數,這樣就設定了success回撥函式的上下文為這個DOM元素。
$.ajax({ url: "test.html", context: document.body, success: function(){
$(this).addClass("done");
}});
data:Object,String型別。傳送到伺服器的資料,將自動轉換為請求字串格式。如{foo:["bar1","bar2"]}會轉換為"&foo=bar1&foo=bar2";
dataFilter:Function型別。對返回的資料進行預處理。function(data, type){return data;}。data為返回的原始資料,type為請求時dataType引數;
dataType:預期伺服器返回的資料型別。可用值:
"xml":返回XML文件,可用jQuery處理;
"html":返回純文字HTML資訊,包含的script標籤會在插入dom時執行;
"script":返回純文字JavaScript程式碼,不會自動快取結果,除非設定"cache"引數。注:在遠端請求時(非同域),所有的POST請求都將轉為GET請求,因為將使用DOM的script標籤來載入。
"json":返回JSON資料;
"text":返回純文字字串;
"jsonp":JSONP 格式。使用 JSONP 形式呼叫函式時,如 "myurl?callback=?" jQuery 將自動替換 ? 為正確的函式名,以執行回撥函式。
"success":Function,Array。(data, textStatus, jqXHR)請求成功後的回撥函式。
"error":請求失敗時呼叫此函式。
除了$.ajax還有簡單易用的$.get和$.post
$.get/post(url,[data],[callback],[type])簡單的get/post請求,替代複雜的ajax,如果需要在出錯時執行函式,就要使用$.ajax。
相關推薦
jQuery非同步請求ajax()之complete引數詳解
請求完成後回撥函式 (請求success 和 error之後均呼叫)。這個回撥函式得到2個引數:XMLHTTPRequest) 物件和一個描述請求狀態的字串("success", "notmodified", "nocontent","error", "timeout", "abort", 或者 "
jQuery非同步請求
一直都是知道ajax非同步請求,也一直在用,只是沒有詳細瞭解過。今天簡單瞭解了一下,寫一篇做記錄。 一直都以為ajax非同步請求都是差不多這種形式: $.ajax({ type
jquery非同步請求ajax()之dataType引數講解
dataType 從伺服器返回你期望的資料型別(意思是指伺服器返回資料後,在執行success方法前,前端jquery先對結果轉成你設定的資料型別)。如果沒有指定,jQuery將嘗試通過MIME型別的響應資訊來智慧判斷,例如java服務端設定response.setCo
jQuery非同步請求方法
jQuery確實是一個挺好的輕量級的JS框架,能幫助我們快速的開發JS應用,並在一定程度上改變了我們寫JavaScript程式碼的習慣。 廢話少說,直接進入正題,我們先來看一些簡單的方法,這些方法都是對jQuery.ajax()進行封裝以方便我們使用的方法,當然,如果要
續上篇,改用struts2實現JQuery的ajax非同步請求
······························································································································· 前面的兩篇因為是在csdn文字上編
jQuery Ajax 非同步請求data引數資料格式的六種方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body>
ajax非同步請求以及Jquery框架封裝的非同步請求方式
一、AJAX - 阿賈克斯 1、什麼是AJAX? Asynchronous Javascript And Xml 是可以建立快速動態網頁的技術。可以實現非同步更新,而不需要載入整個網頁,只加載需要更 新某部分網頁。
jquery實現ajax非同步請求
前端程式碼: <html> <head> <meta charset="UTF-8"> <title>非同步請求</title> <script type="text/javascript" src="jquery-
Jquery ajax非同步請求帶來的問題及解決方案
考慮一段簡單的程式碼 $.post("Handle.ashx"); window.location.href = "Login.aspx"; Handle.ashx的作用是清除Session資料,亦即把使用者登出掉。 這裡就出現一個問題了。 總之最後的效果是,使用者的確重定向到了Log
React專案中使用 jQuery的 ajax進行非同步請求操作
import React, { Component} from 'react'; import $ from 'jquery'; import Cropper from 'react-cropper'; //import 'cropperjs/dist/cropper.cs
jquery使用ajax非同步請求、解析json和each函式
今天使用jquery 的Ajax非同步請求取資料,記錄下來。 var arr=[];//定義一個數組用來記錄資料 $.ajax({ url: "XXX.jsp", type:"post", data:{method: "XX
jquery $.when()多個非同步請求成功後再執行後續方法
$.when( $.ajax( "/page1.php" ), $.ajax( "/page2.php" ) ).done(function( a1, a2 ) { // a1 and a2 are arguments resolved for the page1 and
jquery非同步http請求
$.get(SERVER_URL + "Admin/IncomeStatistics/getMonthlyStatic", { StartTime:$("#begintime").val(), EndTime:$("#endtime").val()
使用JQuery編寫AJax實現非同步請求
上一篇已經介紹了關於Ajax的作用和使用場景,並且介紹了使用JS進行編寫的AJax,下面就直接介紹使用JQuery版本得Ajax非同步重新整理。 $. post()以post請求方式傳送 ajax 格式:JQuery.post ( url , [data] , [callb
利用jquery的ajax實現非同步請求傳送資料到後臺
很多時候,作為一個使用者在前臺操作的時候,處理資料的時候並不一定要後臺實時處理然後再返回訊息,這樣,我們可以實用jquery的$.ajax方法實現非同步請求,在頁面不重新整理的情況下,將資料傳到後臺,
jquery ajax非同步請求json資料
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www
【js/jquery】非同步請求問題
我們通常會使用jquery封裝的$.post或者$.get函式來做非同步請求,非同步的意思是當一處發出非同步請求以後,不會等待請求返回然後再執行後面的函式,而是直接執行後面的函式。有點類似於java中的多執行緒概念,但js中其實沒有多執行緒的概念,可以幫助理解。下面來看具體
jquery 跨域 非同步請求 自定義頭部 預檢請求 spring mvc攔截處理 實現token單點登入
被跨域搞死了,各種奇葩問題。 問題描述:跨域登入,生成token並儲存到redis中,然後返回給客戶端,客戶端每次請求需要將token放到請求頭中傳給服務端,服務端使用過濾器處理跨域攔截,使用攔截器判斷token有效性。問題來了,發來的請求總是獲取不到頭部資訊,也就是取不到
jQuery使用GET方式來進行非同步請求
jQuery.get( url, [data], [callback] ):使用GET方式來進行非同步請求
jquery ajax請求成功也有response,但是不進success
error: json格式 回調函數 區分 回調 服務 erro 就會 watcher 1.狀態碼返回200--表明服務器正常響應了客戶端的請求;2.通過firebug和IE的httpWatcher可以看出服務器端返回了正常的數據,並且是符合業務邏輯的數據,但是,程序就是不