jQuery AJAX方法

开发工具与关键技术:Visual Studio ASP.NET MVC

作者:刘剑鸿

撰写时间:2019年05月25日 星期六

                                 jQuery AJAX方法

AJAX是(Asynchronous JavaScript and XML(异步的 JavaScript 和 XML))的简称。Ajax并不是某种编程语言,AJAX是一种在无需重新加载整个页面的情况下,能够更新部分页面的技术。传统的页面在不使用AJAX,要是更新内容,就必须更新整个页面。下面认识一下同步与异步:

同步就是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,所以进程就会一直拖下去,直到信息返回才能继续执行下去。

异步是指进程不需要一直等下去,而是继续执行下面的操作,不管其他进程的状态。当有消息返回时系统会通知进程进行处理,这样可以提高执行的效率。jQuery AJAX的请求方法有很多种,常用的有 . a j a x ( ) 、 .ajax()、 .ajax().get()
、$.post()。而它们有什么不同呢?

ajax() 方法用于执行 AJAX(异步 HTTP)请求。 所有的 jQuery AJAX 方法都使用 ajax() 方法。该方法通常用于其他方法不能完成 的请求。

. g e t ( ) 、 .get() 、 .get().post()两个不同之处比较多,它们在执行提交的时候不同,get提交时参数直接暴露在URL上,而post
不会。与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。然而在一些特殊的情况下就必须使用POST请求了。

无法使用缓存文件(更新服务器上的文件或数据库)

向服务器发送大量数据(POST 没有数据量限制)

发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠 ‘

Get与post在服务器区别:

Get方法是用来向服务器上获取数据,

Post是用来向服务器上传递修改数据。

Get是不安全的,因为在传输过程中,数据被放在请求的Url中,这样,用户可以直接在浏览器上看到提交的数据,一些系统内部信息也一同显示在用户面前。

Post的所有操作对用户来说都是不可见的。

Get传输的数据量小,主要是受限与于Url长度限制,其中IE浏览器对URL的最大限度为2083个字符(http://hqlong.com/2009/12/1164.html)。

post可以的传输大量的数据,所以在上传文件和大数据量时使用post。

Form表单提交默认为Get方法提交,

要想在Form表单提交使用post 提交,则要添加method="post"给Form标签。

Get方式获取数据后,刷新不会有负面影响,因为它只是获取数据。

Post方式刷新页面重复提交可能会产生不良的后果。

下面是$.ajax()的请求代码:

     $("#btnPost").click(function () {

            $.ajax({//$.ajax({})

                type: "POST",

                url: "/jQueryAjax/postPersonInfor",

                data: {

                    name: $("#txtName").val(),

                    sex: $("#cboSex").val(),

                    address: $("#txtAddress").val()

                },

                dataType: "text",

                //dataType: "json", //这里返回的类型为字符串类型

                success: function (data) {

                    //console.log(data);

                    document.write(data);

                },

                error: function (jqXHR) {

                    alert("发生错误:" + jqXHR.status);

                }

            });

        });

在 type: “POST”,可以切换为type: “GET”。

jQuery.get()以GET方式从服务器获取数据

  $("#btnget").click(function () {

            $.get("/jQueryAjax/getPersonInfor",

                function (data) {

                    console.log(typeof (data));

                    var data =JSON.parse(data);//json转换成js

                    $("#txtName").val(data.name);

                    $("#cboSex").val(data.sex);

                    $("#txtAddress").val(data.address);

            });

        });

语法:jQuery.get(url,
[data], [callback], [type])

get()通过远程 HTTP GET 请求载入信息。

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

post()以POST方式从服务器发送数据

   $("#btnpost").click(function () {

            var txtName = $("#txtName").val();

            var cboSex = $("#cboSex").val();

            var address= $("#txtAddress").val();

            $.post("/jQueryAjax/postPersonInfor", {

                name: txtName, sex: cboSex,
                  address: address

                  }, function (data) {

                document.write(data);

            });

        });

语法:jQuery.post(url, [data], [callback], [type]) 通过远程 HTTP POST 请求载入信息。
是一个简单的 POST 请求功能以取代复杂 $.ajax 。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用
$.ajax。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值