国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

AJAX異步請求

macg0406 / 317人閱讀

摘要:原生操作異步請求第一步創建對象判斷用戶的瀏覽器類型,決定使用何種方式對象感知狀態,當狀態改變是會觸發事件當前狀態為時,數據接收完畢輸出響應信息設置傳遞的信息小明處理中文亂碼第二步創建一個請求,并設置請求地址及異步請求方式第三步發送請求異步請

原生ajax操作

JavaScript 異步 GET請求

    // 第一步:創建ajax對象
    //判斷用戶的瀏覽器類型,決定使用何種方式ajax對象
    if (typeof ActiveXObject != "undefined") {
        var version = [
            "Msxml2.XMLHTTP.6.0",
            "Msxml2.XMLHTTP.5.0",
            "Msxml2.XMLHTTP.3.0",
            "Msxml2.XMLHTTP",
            "Microsoft.XMLHTTP"
        ];
        for (var i = 0; i <= version.length; i++) {
            try {
                var obj = new ActiveXObject(version[i]);
                if (typeof obj != "undefined") {
                    break;
                }
            } catch(ex) {
 
            }
        }
    } else {
        var obj = new XMLHttpRequest();
    }
    
    // 感知ajax狀態,當ajax狀態改變是會觸發事件onreadystatechange
    obj.onreadystatechange = function(){
        // 當前狀態為4時,數據接收完畢
        if (obj.readyState == 4 && obj.status == 200) {
            // 輸出響應信息
            alert(obj.responseText);
        }
    }
 
    // 設置GET傳遞的信息
    var name = "小明";
    // 處理中文亂碼
    name = encodeURIComponent(name);
    // 第二步:創建一個HTTP請求,并設置"請求地址"及異步請求方式
    obj.open("get", "./test.php?fname=" + name + "&addr=beijing", true);
    // 第三步:發送請求
    obj.send();

JavaScript 異步 POST請求

        // 創建Ajax對象
        //判斷用戶的瀏覽器類型,決定使用何種方式ajax對象
        if (typeof ActiveXObject != "undefined") {
            var version = [
                "Msxml2.XMLHTTP.6.0",
                "Msxml2.XMLHTTP.5.0",
                "Msxml2.XMLHTTP.3.0",
                "Msxml2.XMLHTTP",
                "Microsoft.XMLHTTP"
            ];
            for (var i = 0; i <= version.length; i++) {
                try {
                    var obj = new ActiveXObject(version[i]);
                    if (typeof obj != "undefined") {
                        break;
                    }
                } catch(ex) {
 
                }
            }
        } else {
            var obj = new XMLHttpRequest();
        }
        
        // 感知Ajax狀態,當Ajax狀態改變時會觸發事件onreadystatechange
        obj.onreadystatechange = function(){
            // 當前狀態為4時,數據接收完畢
            if (obj.readyState == 4 && obj.status == 200) {
                // 輸出響應信息
                alert(obj.responseText);
            }
        }
 
        // 創建一個http請求,并設置“請求地址”及異步請求方式
        obj.open("post", "./test.php");
        // 設置HTTP頭協議信息
        obj.setRequestHeader("content-type", "application/x-www-form-urlencoded");
        var info = "fname=" + "小明" + "&addr=beijing";
        // 發送請求
        obj.send(info);
jQuery-ajax操作
自行下載并引入jquery:

jQuery 異步 GET請求

// 1.直接請求
// $(function(){
//     $.ajax("./test.php", {
//         data:{name:"tom",age:23},
//         success:function(msg){
//             alert(msg);
//         }
//     });
// });
 
 
// 2.配置setting參數請求
// $(function(){
//     $.ajax({
//         type:"GET",
//         url:"./test.php",
//         data:{name:"tom", age:23},
//         success:function(msg){
//             alert(msg);
//         }
//     });
// });
 
 
// 3.通過$.ajaxSetup()方法預先設置全局參數
// $(function(){
//     // 預先設置全局參數
//     $.ajaxSetup({
//         type:"GET",
//         url:"./test.php",
//         data:{name:"tom",age:23},
//         success:function(msg){
//             alert(msg);
//         }
//     });
//     // 執行ajax操作,使用全局函數
//     $.ajax();
// });
 
// 4.利用$.get()方法請求
//只發送get請求
// $(function(){
//     $.get("./test.php");
// });
 
// 發送get請求并接受返回結果
// $(function(){
//     $.get("./test.php", function(msg){
//         alert(msg);
//     });
// });
 
// 發送請求并傳遞數據
// $(function(){
//     $.get("./test.php", {name:"tom",age:23}, function(msg){
//         alert(msg);
//     });
// });
 
// 發送get請求并傳遞數據,接受返回結果,顯示返回格式
// $(function(){
//     $.get("./test.php", {name:"tom",age:23}, function(msg){
//         alert(msg.name + " " + msg.age);
//     }, "json");
// });
 
// 使用$.getJSON()可以實現同樣的功能
$.getJSON("./test.php", {name:"tom", age:23}, function(msg){
    alert(msg.name + " " + msg.age);
});

jQuery 異步 POST請求




    
    jquery-ajax發送post請求


 
Ajax無刷新評論
  • 姓名:
  • 評論:
jQuery-ajax&php跨域請求問題

第一種方法JSONP

注意:JSONP只支持get請求

1.首先在jquery-ajax配置參數中添加這兩項
    dataType: "jsonp",
    jsonp: "callback",

例如

        $.ajax({
            type: "GET",
            url: "http://127.0.0.1/ajax2/serverjsonp.php?number=" + $("#keyword").val(),
            dataType: "jsonp",
            jsonp: "callback",
            success: function(data) {
                if (data.success) {
                    $("#searchResult").html(data.msg);
                } else {
                    $("#searchResult").html("出現錯誤:" + data.msg);
                }
            },
            error: function(jqXHR){
               alert("發生錯誤:" + jqXHR.status);
            },
        });
2.然后,在php中做修改
$jsonp = $_GET["callback"];
echo $jsonp . "({"success":false,"msg":"參數錯誤"})";  //輸出的字符串前面要拼接上jsonp

第二種方法XHR2

注意:其他瀏覽器都支持,但是IE必須得IE10以上,只需要服務端接口加上以下頭信息

header("Access-Control-Allow-Origin:*");  //允許所有訪問
header("Access-Control-Allow-Origin", "http://my.domain.cn:8080");  //只允許特定域名訪問
header("Access-Control-Allow-Methods:POST,GET");    //允許跨域請求的方法,可以做限定
header("Access-Control-Allow-Credentials:true");    //請求的時候是否帶上cookie信息
JavaScript-ajax請求xml數據

xml示例



    
        wendy
        35
        Santa Fe
    
    
        Yaphet
        32
        Balchik
    
    
        Isaiah
        35
        Caldera
    

js示例




    
    Ajax獲取XML信息
    


    

Ajax獲取XML信息

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/99559.html

相關文章

  • 深入淺出Ajax

    摘要:在接收響應期間持續不斷地觸發。在請求發生錯誤時觸發。在通信完成或者觸發或事件后觸發。已經接收到部分響應數據。基于標準被廣泛支持。破壞程序的異常處理機制。 原文(我的GitHub):https://github.com/liangfengbo/frontend-ability/issues/1 學習大綱 理解Ajax的工作原理 Ajax核心-XMLHttpRequest對象 封裝Aja...

    megatron 評論0 收藏0
  • 深入了解ajax

    摘要:而由于安全風險的原因,被禁止使用。就好比單線程一樣,請求發出后就進入阻塞狀態,直到解除阻塞,余下的代碼才會繼續執行。安全問題暴露了與服務器交互的細節。破壞了程序的異常機制。服務器端暫時無法處理請求可能是過載或維護。 AJAX全稱Asynchronous JavaScript and XML(異步JavaScript和XML),是指一種創建交互式網頁應用的網頁開發技術。它有機地包含了以下...

    zhouzhou 評論0 收藏0
  • AJAX面試題都在這里

    摘要:常見面試題什么是,為什么要使用是的縮寫。該對象在中首次引入,它是一種支持異步請求的技術。頭信息已經接收,響應數據尚未接收。同源策略是客戶端腳本尤其是的重要的安全度量標準。這樣頁面的所有都會執行這條語句就是不需要保存緩存記錄。 AJAX常見面試題 什么是AJAX,為什么要使用Ajax AJAX是Asynchronous JavaScript and XML的縮寫。他是指一種創建交互式網頁...

    QiShare 評論0 收藏0
  • 異步處理方案系列- 1.callback

    摘要:一個沒有返回值的函數執行的效果其實是利用它的副作用一個沒有返回值和利用副作用的函數其實就是一個黑洞。 本篇博客尚未上傳 github github 首頁(star+watch,一手動態直達): https://github.com/HCThink/h-blog 掘金 link , 掘金 專欄 segmentfault 主頁 原創禁止私自轉載 異步處理方案系列- 1.call...

    anRui 評論0 收藏0
  • (轉)JavaScript:同步、異步和事件循環

    摘要:事件循環事件循環是指主線程重復從消息隊列中取消息執行的過程。事件觸發時,表示異步任務完成,會將事件監聽器函數封裝成一條消息放到消息隊列中,等待主線程執行。 一. 單線程 我們常說JavaScript是單線程的。 所謂單線程,是指在JS引擎中負責解釋和執行JavaScript代碼的線程只有一個。不妨叫它主線程。 但是實際上還存在其他的線程。例如:處理AJAX請求的線程、處理DOM事件的線...

    android_c 評論0 收藏0
  • JavaScript:徹底理解同步、異步和事件循環(Event Loop)

    摘要:例如處理請求的線程處理事件的線程定時器線程讀寫文件的線程例如在中等等。事件循環事件循環是指主線程重復從消息隊列中取消息執行的過程。事件觸發時,表示異步任務完成,會將事件監聽器函數封裝成一條消息放到消息隊列中,等待主線程執行。 一. 單線程 我們常說JavaScript是單線程的。 所謂單線程,是指在JS引擎中負責解釋和執行JavaScript代碼的線程只有一個。不妨叫它主線程。 但是實...

    wenyiweb 評論0 收藏0

發表評論

0條評論

macg0406

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<