Ajax中$.post()和$.ajax()总结

初学AJAx,对于几种写法一直搞不懂,

对于$.ajax(),在官方API文档中是这么说的:

jQuery 底层 AJAX 实现。简单易用的高层实现见 $.get, $.post 等。$.ajax() 返回其创建的 XMLHttpRequest 对象。大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获得更多的灵活性。最简单的情况下,$.ajax()可以不带任何参数直接使用。 

儿对于$.post(),官方API文档中是这么说的:

这是一个简单的 POST 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用 $.ajax


然后先看两个实例:

$('#btnNewFile').bind('click', function () {
  //请求获得系统自动生成的招标项目编号,并显示到页面的文本框中
            $.post("/InviteBid/GetInviteBidId", function (data, status) {
                $("#NewFile").hide();
                $('#BidInfo').show();                
                $('#InviteBidId').val(data); //将请求得到的数据赋值给招标项目编号文本框               
                $("#btnArea").show();
                //更改标题
                $("#MainContent").panel({
                    title:"填写项目信息"
                });
            });            
        });
  //提交用户输入的必要的项目信息,根据此信息生成相应的Word模板,这里可以用$.post()方法代替
            $.ajax({
                type:"POST",
                url: "/InviteBid/ReceiveInfo",
                contentType: "application/json", //如果提交的是json数据类型,则必须有此参数,表示提交的数据类型 
                //dataType: "json", //表示返回值类型,不必须           
                data: JSON.stringify({ "InviteBidInfo": 
                    [{ 'BidProId': BidProId, 'BidProType': BidProType, 'BidProName': BidProName, 'ItemType': ItemType }]
                }),  
                success: function (jsonResult) {                  
                    //在原来的页面跳转到下载word模板的页面
                    window.location.href = "/InviteBid/ExportTemplateFile";
                },
                error: function (data){
                    alert("下载模板失败!");
            }
            });      
        });

 之前已经总结过ajax方法中参数的解析,本文这两个方式可以理解为一个简单的,一个完整的,其中$.post()方法中的function(){}只有当请求成功响应成功是才能执行该方法(可以理解为完整写法中succes:后的方法), 如果需要在请求出错时执行函数,则只能使用 $. ajax();




猜你喜欢

转载自blog.csdn.net/qq_29569183/article/details/79217976