jquery实现Ajax请求

本文介绍了如何使用jQuery轻松实现Ajax请求,包括$.ajax()、$.post()、$.get()和$.getJSON()方法的详细使用,以及加载数据到DOM中的$.load()方法。通过引入jQuery库,可以简化原生Ajax的复杂性,快速实现页面与服务器之间的数据交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

jquery实现Ajax请求

Ajax用于无需刷新整个页面而进行浏览器与服务器的通信,服务器将不再返回整个页面,而是返回部分数据,通过JavaScript的DOM操作对节点进行更新。数据传输格式有xml、json等格式,但常用的是json格式。
我们可以使用JavaScript的对象XMLHttpRequest来实现原生Ajax,但这种方法比较复杂,不易编写。jQuery已经封装了Ajax,使得发起Ajax请求比较容易,本文简单介绍jQuery实现Ajax的过程:

1、在<head>标记中引入jquery.js文件`

(1)新浪CDN

 <script src="https://lib.sinaapp.com/js/jquery/2.0.2/jquery-2.0.2.min.js"></script>

(2)百度CDN

<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>

(3)Google CDN

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

(4)Staticfile CDN

<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>

(5)又拍云 CDN

<script src="https://upcdn.b0.upaiyun.com/libs/jquery/jquery-2.0.2.min.js"></script>

注意:引入jquery.js时,格式要用<script></script>,而不要用<script/>,否则会出错。
(6)使用本地下载的jquery.js文件
下载地址:jquery.com

2、几种常见jQuery的Ajax方法

(1)$.ajax()
①url:链接地址,字符串表示
②data:(可选) 要发送给服务器的数据,GET与POST都可以,将自动转换为请求字符串格式,以 Key/value 的键值对形式表示,会做为QueryString附加到请求URL中,格式为{A: ‘…’, B: ‘…’}
③type:“POST” 或 “GET”,请求类型
④timeout:请求超时时间,单位为毫秒,数值表示
⑤cache:是否缓存请求结果,bool表示
⑥contentType:内容类型,默认为"application/x-www-form-urlencoded"
⑦dataType:服务器响应的数据类型,字符串表示;当填写为json时,回调函数中无需再对数据反序列化为json
⑧success:请求成功后,服务器回调的函数
⑨error:请求失败后,服务器回调的函数
⑩complete:请求完成后调用的函数,无论请求是成功还是失败,都会调用该函数;如果设置了success与error函数,则该函数在它们之后被调用
⑪async:是否异步处理,bool表示,默认为true;设置该值为false后,JS不会向下执行,而是原地等待服务器返回数据,并完成相应的回调函数后,再向下执行
⑫username:访问认证请求中携带的用户名,字符串表示
⑬password:返回认证请求中携带的密码,字符串表示

 <script type="text/javascript">
        function login1(){
            $.ajax({
                //${pageContext.request.contextPath}用于取后端方法的绝对路径的项目名
                url: "${pageContext.request.contextPath}/user/returnJson",
                type: "GET",
                data:'{name: 'James'}', //必须是字符串格式
                contentType:"application/json", //指定内容格式
                dataType:json,
                success: function(data) {  //括号里的data是服务器返回的数据
                    console.log(data);
                    document.getElementById("myDiv").innerText=data["name"];
                }
            });
        }
    </script>

(2)$.post()

使用POST方式执行Ajax请求,从服务器加载数据。
形式:$.post(url, data, func, dataType);
可选参数:
①url:链接地址,字符串表示
②data:需要发送到服务器的数据,格式为{A: ‘…’, B: ‘…’}
③func:请求成功后,服务器回调的函数;function(data, status, xhr),其中data为服务器回传的数据,status为响应状态,xhr为XMLHttpRequest对象,个人感觉关注data参数即可
④dataType:服务器返回数据的格式

<script type="text/javascript">
        function login2(){
            $.post(
                "${pageContext.request.contextPath}/user/returnJson",
                 '{name: 'James'}',
                  "application/json",
                 function(data) {
                    console.log(data);
                    document.getElementById("myDiv").innerText=data["name"];
                }
            );
        }
    </script>

(3)$.get()

使用GET方式执行Ajax请求,从服务器加载数据。
形式:$.get(url, data, func, dataType);

<script type="text/javascript">
        function login3(){
            $.get(
                "${pageContext.request.contextPath}/user/returnJson",
                function(data) {
                    console.log(data);
                    document.getElementById("myDiv").innerText=data["name"];
                }
            );
        }
    </script>

(4)$.getJSON()

形式:$.getJSON(url, data, func);
使用GET方式执行Ajax请求,从服务器加载JSON格式数据。

<script type="text/javascript">
        function login4(){
            $.getJSON(
                "${pageContext.request.contextPath}/user/returnJson",
                function(data) {
                    console.log(data);
                    document.getElementById("myDiv").innerText=data["name"];
                }
            );
        }
    </script>

注意:因为确定服务器返回的数据格式为json,因此该方法不必再指定dataType。

(5)$.load()

将服务器加载的数据直接插入到指定DOM中的某个节点中。
形式:$.load(url, data, func);
其中data如果存在则使用POST方式发送请求,不存在则使用GET方式发送请求。

		<div id="myRes"></div>
		function login5() {
            $('#myRes').load(
                "${pageContext.request.contextPath}/user/returnJson",  
                '{name: 'James'}',
                "application/json"
            );
            }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值