JQuery Ajax补充

Ⅰ- 壹 - JQuery Ajax

一 JQuery中的ajax分为三层

  • 最顶层

    $.getScript() $.getJSON();

  • 中间层
    $(“elem”).load() $.get() $.post()

  • 最基础层

    $.ajax();

二 最顶层 $.getScript() $.getJSON()

1 $.getScript()

getScript() 方法通过 HTTP GET 请求载入并执行 JavaScript 文件。

 $.getScript("./js/a.js",function(res){
            // var script=document.createElement("script");
            // script.innerHTML=res;
            // document.body.appendChild(script);
            // abc();
            //进行转移处理,res回调函数的数值
            $("<script><\/script>").appendTo("body").html(res);
            abc();
        }) 

添加多个

var arr=["./js/a.js","./js/b.js","./js/c.js"];
        var script= $("<script><\/script>").appendTo("body");
        getScriptFile();
        function getScriptFile(){
            var url=arr.shift();
            if(url){
                $.getScript(url,function(res){
                    script.html(script.html()+res);
                    getScriptFile();
                });
                return;
            }
            fn();
        } 

2 $.getJSON()

getJSON() 方法使用 AJAX 的 HTTP GET 请求获取 JSON 数据。

   $.getJSON("./package.json",function(res){
            console.log(res);
        }) 

三 中间层 ( " e l e m " ) . l o a d ( ) 、 ("elem").load()、 ("elem").load().get()、$.post()

1 load()

load() 方法从服务器加载数据,并把返回的数据放置到指定的元素中。

  1. 可以用于两个页面的衔接
$("body").load("./a.html")  加载页面
  1. 加载json
$("div").load("./package.json");
$(document).load("./package.json",function(res){
            console.log(res);
        }) 
  1. 传数据
$("div").load("http://127.0.0.1:8001/?a=3&b=4");

GET和POST方式

 // ______
    $(document).load("http://127.0.0.1:8001/","a=3&b=4",function(res){
        console.log(res);
    }) 
     $(document).load("http://127.0.0.1:8001/","a=3&b=4",function(res,success,xhr){
        console.log(res,success,xhr);
    }) 
    // ________以上两种写法都是GET方式通信

    // ——————————下面这种是POST方式通信
     $(document).load("http://127.0.0.1:8001/",{a:3,b:4},function(res,success,xhr){
        console.log(res,success,xhr);
    }) 

2 POST()

 $.post("http://127.0.0.1:8001/",{a:10,b:20},function(res){
            console.log(res);
        });

3 GET()

$.get("http://127.0.0.1:8001/",{a:10,b:50},function(res){
            console.log(res);
        })

四 最基础层 Ajax

Ajax方法参数:

参数类型说明
String发送请求的地址
typeStringget/post 默认get方式
dataTypeString设置数据类型比如html、xml、json 等 dataType:“json”
dataObject或String发送到服务器的数据,键值对字符串或对象
successFunction请求成功后调用的回调函数
asyncBoolean是否异步处理。默认为true, false 为同步处理
timeoutNumber设置请求超时的时间(亳秒)
jsonpString指定-一个查询参数名称来覆盖默认的jsonp回调参数名callback.

默认使用方法

$.ajax({
            // type: get/post  默认get方式
    		// dataType:"json", 设置数据类型
            url:"http://127.0.0.1:8001/",
            data:{a:10,b:20},
            success:function(res){
                console.log(res);
            }
        })

自定义方式

$.ajax({
            type:"post",
            dataType:"json",
            // dataType:"jsonp",
            url:"http://127.0.0.1:8001/",
            data:{a:10,b:20},
            success:function(res){
                console.log(res);
            }
        })

例子:百度

$.ajax({
            dataType:"jsonp",
            url:"https://sp0.baidu.com/5a1Fazu8AA54nxGko9WTAnF6hhy/su",
            data:"wd=谢天&json=1&p=3&sid=22084_1436_13548_21120_22036_22073&req=2&csor=0&cb=callback",
            jsonp:"callback"
        })
        function callback(data){
            console.log(data);
        } 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值