1. 程式人生 > >jQuery AJAX — 篇二 $.get()和 $.post()

jQuery AJAX — 篇二 $.get()和 $.post()

  上篇部落格中說到jQuery對Ajax操作進行了封裝,我們可以很簡單的應用AJAX,並且學習了jQuery AJAX $.load()方法,今天再來學習另外兩個方法$.get()$.post()

GETPOST 

  在學習AJAX時我們就學過了GETPOST這兩種請求方式,一個主要的區別是:

  GET方式,一般用於獲取URL上的資源,主要是讀取,可以被快取;

  POST方式,一般用於更新資源,不會被快取。

  我們可以找一個具體的例子來理解,我們在對這篇部落格進行多次請求,返回的內容還是這篇部落格,是不變的,我們理解為GET方式,如果我們在進行評論就理解為POST方式,大家可以體驗一下這個“

POST”。

  又一次比較了GETPOST,大家不要拍磚,其實每接觸到一次再進行一次學習,這就是一個反覆的過程。

  下面我們看$.get()$.post()的例項和說明

$.get()方法

我們接著上篇部落格的例子再來用$.get()方法實現。

<!DOCTYPE html>
<html>
    <head>
        <title></title>
        <metahttp-equiv="Content-Type" content="text/html;charset=UTF-8">
        <scripttype="text/javascript" src="jquery.js"></script>
        <scripttype="text/javascript">
            $(document).ready(function(){
               $("#btn").click(function(){
                   var userName =document.getElementById("UserName").value;
            //$('#message').load("AJAX?name=" + userName);
 
                   //$.get()方法
                   $.get("AJAX?name=" + userName,function(data,status){
                        $("#message").html(data);
                        alert(status);
                    });                    
                });
              });
        </script>
    </head>
    <body>
        <input type="text"id="UserName" value="admin"/>
        <input type="button"id="btn" value="校驗使用者名稱"/>
        <br/>
        <divid="message"></div>
    </body>
</html>

通過實現程式碼,來看$.get()的使用說明

$.get()方法 :通過 HTTPGET 請求從伺服器上請求資料。

    語法:$.get(url,[data],[callback],[type])

引數說明:

         url:請求的url地址

  data:傳送至伺服器的key/value資料會作為QueryString附加到請求URL中

  callback:載入成功時的回撥函式

  type:伺服器返回的內容的格式,包括xml html script json text default

  引數必須的是url,其它引數可選

回撥函式:

function(data,status){

  $("#message").html(data);

}); 

data:請求返回的內容

status:請求的狀態:success、error、notmodified、timeout

$.post()方法:通過 HTTP POST 請求從伺服器上請求資料。

  語法:$.post(url,[data],[callback],[type])

  從語法上很容易看出,和$.get()方法使用一樣。

$('#message').get()是否正確?

  上篇部落格中是這樣寫的$('#message').load("AJAX?name="+ userName);開始在實現$.get()時我也這樣寫$('#message').get(),結果卻不通過。這是為什麼

  $.load()和$.get()在從伺服器獲取資料的方法上,幾乎是一樣的,不同的是$.load()它不是全域性函式,並且擁有隱式的回撥函式,當偵測到成功的響應時(比如,當 textStatus 為 "success" 或"notmodified" 時),.load() 將匹配元素的 HTML 內容設定為返回的資料。這意味著該方法的大多數使用會非常簡單:

  $('#message').load("AJAX?name="+ userName);

服務端程式碼和XML完全和上篇部落格例子一樣,不再寫。

未完結

  $.get()$.post()原理其實還是getpost請求的原理,只不過通過jQuery讓我們的實現變得簡單(這都得益於jQuery強大的功能)。jQuery AJAX方法瞭解和學習仍在繼續,別走開,馬上回來。現在好像很流行"馬上"

相關推薦

jQuery AJAX $.get() $.post()

  上篇部落格中說到jQuery對Ajax操作進行了封裝,我們可以很簡單的應用AJAX,並且學習了jQuery AJAX的 $.load()方法,今天再來學習另外兩個方法$.get()和$.post

jQuery的區域性重新整理——getpostajax方法寫法小結

在前臺頁面的編寫中,為了考慮到業務的科學性和使用者的體驗性,常常需要驗證使用者的輸入資料是否合理有效。一般來講,普通的js即可以做到,但更多時候往往需要跟後臺進行互動。例如使用者註冊,判斷使用者所輸入的使用者名稱是否已經存在。下面用jQuery的get、post和ajax方法來實現判斷,同時對這三種常見的區

解決jquery ajax在跨域訪問post請求的時候,ie9以下無效(包括ie9)的問題

jquery src actor div tick 屬性 dex 啟用 logs 最近在做項目的時候遇到一個問題,就是跨域請求ajax的時候ie9以下的瀏覽器不可以訪問,直接執行error裏面的代碼,但是也不報錯,就上網查了查,發現了一個很好用的方法,在這裏記錄一下,也希望

封裝ajax支持getpost

一個 content 瀏覽器 sof nco 但是 fun 表單提交 ive 為什麽要封裝ajax,因為…… for(var i=0;i<20;i++){   $.ajax(……) } 的時候,整個頁面都卡死了,於是,我開始找答案。 後來,找到了,就是jquery的a

原生Ajax使用筆記---getpost方法,url傳參

AJAX是Asynchronous Javascript And XML(非同步JavaScript和XML)的縮寫,用於建立快速動態網頁的技術。AJAX的核心物件是XMLHttpRequest ,在每個瀏覽器中都有。 原生Ajax的使用步驟: 建立一個核心物件XMLHttpReque

jQuery.ajax設定請求頭實現post請求傳送資料的格式(Form DataRequest Payload)

 Request Payload 請求頭部的 Content-Type: application/json,請求正文是一個 json 格式的字串 Form Data 請求頭部的 Content-Typ

jquery ajax在跨域訪問post請求的時候,ie9以下無效(包括ie9)

1. 設定瀏覽器安全屬性,啟用【通過域訪問資料來源】選項,如圖:   2.呼叫ajax方法時,設定crossDomain為相反的值。原文連結:https://bugs.jquery.com/ticket/12097 <!DOCTYPE html> &l

HttpClient 4.1.3 初學---使用GetPost模擬登入簡單頁面(分別帶引數)

    最近需要解決的問題需要用到Httpclient,模擬登陸網站!成功之後就可以用程式碼的方式獲取網站內容或者傳送請求,類似網路爬蟲。     但是在網上找了好多篇Blog,發現每一片的寫法都不一樣,也糾結了些時間,很納悶,才發現Httpclient版本不一樣。。。現在

iOS開發網路—傳送GETPOST請求(使用NSURLSession)

1)該文主要介紹如何使用NSURLSession來發送GET請求和POST請求   2)本文將不再講解NSURLConnection的使用,如有需要了解NSURLConnection如何傳送請求。     詳細資訊,請參考:http://www.cnblogs.co

Ajax Post提交複雜JSON物件的簡便有效方法(適用jQuery-Ajax原生JS XMLHttpRequest POST

用Ajax Post提交非常複雜JSON物件,是一件麻煩的事,如果以簡單JSON物件的提交思維來設計複雜JSON物件時,經常出現各種問題。現在找到了一個非常簡便有效的方法,跟大家分享下。下面,用SpringBoot,演示下jQuery Ajax Post如何提交以下複雜JSO

ajax案例---以GETPOST方式非同步提交資料給後臺

前臺頁面程式碼 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transi

jquery-$.ajax提交與$.get獲取資料

兩種常用到的資料互動方式,記錄一下避免忘記 $.ajax提交資料 $.ajax({ type : 'post',  //資料提交請求方式也可以使用get url : newUrl,  //資料提交地址

js源碼 模仿 jqueryajax的獲取數據(getpost )的請求封裝

{} req turn eva syn 動作 取字符串 func ring function ajax(obj){ // 默認參數 var defaults = { type : ‘get‘, data : {}, url : ‘#‘, dataType : ‘text‘,

jQueryAJAX get() post() 方法

文件 緩存 set log 實例 請求 返回 nstat 獲取數據 jQuery get() 和 post() 方法用於通過 HTTP GET 或 POST 請求從服務器請求數據。 HTTP 請求:GET vs. POST 兩種在客戶端和服務器端進行請求-響應的常用方法是

jQuery中$.get()、$.post()$.ajax()

nag post 這就是 也有 定義 消息 ram 結果 通用 jQuery.get()方法: $.get(url,data,success(response,status,xhr),dataType) 該函數是簡寫的 Ajax 函數,等價於: [javasc

Jquery AJAX POSTGET之間的區別

load wmb data col form put content lencod 2.4 Jquery AJAX POST與GET之間的區別 GET 就是一個相同的URL只有一個結果,瀏覽器直接就可以拿出來進行獲取,比如抓取接口get方式的內容,或者說直接獲取網

JQUERYAJAXget()、post()的跨域方法

get()請求: $.ajax({ type: "get", url: "你的請求地址", dataType: 'jsonp', //【jsonp進行跨域請求 只支援get】 data:{ //【這裡填寫

jQuery 的 .get.post.ajax方法IE的相容問題

最近發現不少朋友遇到這樣的問題,也就是用jQuery的時候呢,.get方法在FireFox瀏覽器下可以正常獲取值並顯示,但是在IE下呢就非然,這個主要是因為IE的快取的問題,可以這樣解決: <script type="text/javascript" src="jqu

jquery ajaxpostget的同步問題

解決方法1: 在全域性設定: $.ajaxSetup({ async : false }); 然後再使用post或get方法 $.get("register/RegisterState", {test : 12}, function(data, st

jQuery ajax $.get或$.post 實現timeout超時設定的方法

var timeout=setTimeout(function(){ //超時啦,乾點什麼 }, 5000 //超時時間,考慮到網路問題,5秒還是比較合理的 ); $.post(url,function(data){ if(timeout){ //清除定時