jquery中 $.ajax $.get $.post的区别?

$.post例子

$.post(ctp + "admin/dept/getDept", {
    
    "deptId": deptId}, function (r) {
    
    
        if (r.code === 200) {
    
    
        } else {
    
    
        }
    });

$.get例子

$.get(ctp + "admin/dept/getDept", {
    
    "deptId": deptId}, function (r) {
    
    
        if (r.code === 200) {
    
    
        } else {
    
    
        }
    });

$.ajax例子

	$.ajax({
    
    
            async:true,//是否异步
            url:ctp + "admin/dept/getDept",
            type:"post",
            data:{
    
    "deptId": deptId},
            dataType:"json",
            success:function (r){
    
    
                if (r.code === 200) {
    
    
                } else {
    
    
                }
            },
            faild:function (e){
    
    
                return e;
            }
        })
1.$.ajax 是 jQuery 底层 ajax 实现,$.ajax是一种通用的底层封装,$.ajax()请求数据之后,则需要使用回调函数,有beforeSend、error、dataFilter、success、complete等。
2.$.get ,$.post是简单易用的高层实现,我们使用$.get ,$.post方法,jQuery会自动封装调用底层的$.ajax。
3.$.get 只处理简单的 get请求功能以取代复杂 $.ajax,请求成功时可调用回调函数。不支持出错时执行函数,否则必须使用$.ajax。
4.$.post 只处理 post请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。不支持出错时执行函数,否则必须使用$.ajax。
5.$.get(ctp +"admin/dept/getDept", {
    
    "deptId": deptId,"name":name}) $.get方法在请求时会自动生成queryString提交给服务器(name="市场部"&deptId=21),并且url的长度是有限制的
6.$.post方法提交的数据直接类似表单提交,提交的数据量比$.get更大。
7.$.post() 和 $.get() 默认是 异步请求,如果需要同步请求,则可以进行如下使用:
	在$.post()前加上一行配置,把ajax设置为同步:$.ajaxSettings.async = false;
	在$.post()后加上一行配置,把ajax改回为异步:$.ajaxSettings.async = true;
	$.ajax则可以直接通过async属性来控制同步还是异步

猜你喜欢

转载自blog.csdn.net/qq_40136782/article/details/109337288
今日推荐