如何用 jQuery AJAX 请求数据

什么是Ajax?

AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新。
AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。

简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据,并在网页上进行显示。

关于 jQuery 与 AJAX

jQuery 提供多个与 AJAX 有关的方法。

通过 jQuery AJAX 方法,您能够使用 HTTP GetHTTP Post 从远程服务器上请求文本、HTML、XML 或 JSON 。同时您能够把这些外部数据直接载入网页的被选元素中。

jQuery在异步提交方面封装的很好,直接用AJAX非常麻烦,jQuery大大简化了我们的操作,不用考虑浏览器的兼容性.

语法

$.ajax({name:value, name:value, ... })

Ajax 请求格式:

function clickFun() {
        $.ajax({
            url: "http://localhost:8088/user/get-level-users?level=1",   //	请求的地址
            type: "GET",                                       //请求类型		GET/POST
            headers: {                                  
                "X-Requested-With": XMLHttpRequest
            },
            success:function(result){
                console.log(result)
            },
            error:function(error){
                console.log("error", error)
            }
        });
    }

$.ajax({ 
	//	请求的地址
	url: url,		
										
	//请求类型		GET/POST
	type: 'POST',
	
	//	向服务器提交的数据
	data: {
		name: "John", age: 12
	},
	
	//预计服务器响应返回的数据									
	dataType:	"json",	
	
	//成功后函数					
	success: function(){
        
      }
});

在这里插入图片描述

一,jQuery - AJAX load() 方法

Query load() 方法是简单但强大的 AJAX 方法。

load() 方法从服务器加载数据,并把返回的数据放入被选元素中。
语法:

$(selector).load(URL,data,callback);

下面的例子会在 load() 方法完成后显示一个提示框。如果 load() 方法已成功,则显示”外部内容加载成功!”,而如果失败,则显示错误消息:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script src="https://cdn.bootcss.com/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
  $("button").click(function(){
    $("#div1").load("/try/ajax/demo_test.txt",function(responseTxt,statusTxt,xhr){
      if(statusTxt=="success")
        alert("外部内容加载成功!");
      if(statusTxt=="error")
        alert("Error: "+xhr.status+": "+xhr.statusText);
    });
  });
});
</script>
</head>
<body>

<div id="div1"><h2>使用 jQuery AJAX 修改该文本</h2></div>
<button>获取外部内容</button>

</body>
</html>

二,jQuery - AJAX get() 和 post() 方法

jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据。

HTTP 请求:GET vs. POST
两种在客户端和服务器端进行请求-响应的常用方法是:GET 和 POST。

GET - 从指定的资源请求数据
POST - 向指定的资源提交要处理的数据
GET 基本上用于从服务器获得(取回)数据。注释:GET 方法可能返回缓存数据。

POST 也可用于从服务器获取数据。不过,POST 方法不会缓存数据,并且常用于连同请求一起发送数据。

jQuery $.get() 方法:

$.get() 方法使用 HTTP GET 请求从服务器加载数据。

$.get(URL,data,function(data,status,xhr),dataType)

在这里插入图片描述
下面的例子使用 $.get() 方法从服务器上的一个文件中取回数据:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
	$("button").click(function(){
		$.get("/try/ajax/demo_test.php",function(data,status){
			alert("数据: " + data + "\n状态: " + status);
		});
	});
});
</script>
</head>
<body>

<button>发送一个 HTTP GET 请求并获取返回结果</button>

</body>
</html>

$.get() 的第一个参数是我们希望请求的 URL(“demo_test.php”)。

第二个参数是回调函数。第一个回调参数存有被请求页面的内容,第二个回调参数存有请求的状态。

jQuery $.post() 方法

$.post() 方法使用 HTTP POST 请求从服务器加载数据。
语法:

$(selector).post(URL,data,function(data,status,xhr),dataType)

在这里插入图片描述

实例

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js">
</script>
<script>
$(document).ready(function(){
	$("button").click(function(){
		$.post("/try/ajax/demo_test_post.php",{
			name:"菜鸟教程",
			url:"http://www.runoob.com"
		},
		function(data,status){
			alert("数据: \n" + data + "\n状态: " + status);
		});
	});
});
</script>
</head>
<body>

<button>发送一个 HTTP POST 请求页面并获取返回内容</button>

</body>
</html>

GET 和 POST 方法的区别:

1、发送的数据数量

在 GET 中,只能发送有限数量的数据,因为数据是在 URL 中发送的。

在 POST 中,可以发送大量的数据,因为数据是在正文主体中发送的。

2、安全性

GET 方法发送的数据不受保护,因为数据在 URL 栏中公开,这增加了漏洞和黑客攻击的风险。

POST 方法发送的数据是安全的,因为数据未在 URL 栏中公开,还可以在其中使用多种编码技术,这使其具有弹性。

3、加入书签中

GET 查询的结果可以加入书签中,因为它以 URL 的形式存在;而 POST 查询的结果无法加入书签中。

4、编码

在表单中使用 GET 方法时,数据类型中只接受 ASCII 字符。

在表单提交时,POST 方法不绑定表单数据类型,并允许二进制和 ASCII 字符。

5、可变大小

GET 方法中的可变大小约为 2000 个字符。

POST 方法最多允许 8 Mb 的可变大小。

6、缓存

GET 方法的数据是可缓存的,而 POST 方法的数据是无法缓存的。

7、主要作用

GET 方法主要用于获取信息。而 POST 方法主要用于更新数据。

jQuery getJSON() 方法

使用 HTTP GET 请求从服务器加载 JSON 编码的数据

语法

$(selector).getJSON(url,data,success(data,status,xhr))

在这里插入图片描述
这里有一个Ajax基础使用与jquery下使用ajax教程
详情点击 jquery下使用ajax教程

发布了23 篇原创文章 · 获赞 0 · 访问量 3123

猜你喜欢

转载自blog.csdn.net/weixin_45644335/article/details/104381471