jQuery AJAX get() 和 post() 方法

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


HTTP 请求: GET vs. POST

客户端和服务器之间 请求-响应 的两种常用方法是:GET 和 POST。

  • GET - 从指定资源请求数据
  • POST - 将要处理的数据提交到指定的资源

GET 基本上只用于从服务器获取(检索)一些数据。备注: GET 方法可能会返回缓存的数据。

POST 也可以用于从服务器获取一些数据。然而,POST 方法从不缓存数据,通常用于随请求一起发送数据。

要了解有关 GET 和 POST 的更多信息,以及这两种方法之间的差异,请阅读本站的 HTTP 方法 一章。


jQuery $.get() 方法

$.get() 方法通过 HTTP GET 请求从服务器请求数据。

语法:
  1. $.get(URL,callback);

请求的 URL 参数指定要请求的 URL。

可选回调参数 callback 是请求成功时要执行的函数的名称。

下面实例使用 $.get() 方法从服务器上的文件获取数据:

实例
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <script src="https://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
  5. <script>
  6. $(document).ready(function(){
  7. $("button").click(function(){
  8. $.get("/example/ajax/demo.ashx", function(data, status){
  9. alert("Data: " + data + "\nStatus: " + status);
  10. });
  11. });
  12. });
  13. </script>
  14. </head>
  15. <body>
  16. <button>向页面发送 HTTP GET 请求并返回结果</button>
  17. </body>
  18. </html>

$.get() 的第一个参数是我们要请求的 URL ("demo.ashx")。

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

提示:下面是 ASHX 文件的代码 ("demo.ashx"):

  1. public void ProcessRequest(HttpContext context)
  2. {
  3. context.Response.ContentType = "text/plain";
  4. context.Response.Write("这是一个 asp.net 文件");
  5. }

jQuery $.post() 方法

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

语法:
  1. $.post(URL,data,callback);

请求参数 URL 指定要请求的 URL。

可选数据参数 data 指定一些要随请求一起发送的数据。

可选回调参数 callback 是请求成功时要执行的函数的名称。

下面的示例使用 $.post() 方法随请求发送一些数据:

实例
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <script src="https://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
  5. <script>
  6. $(document).ready(function(){
  7. $("button").click(function(){
  8. $.post("/example/ajax/demo_post.ashx",
  9. {
  10. name: "Donald Duck",
  11. city: "Duckburg"
  12. },
  13. function(data,status){
  14. alert("Data: " + data + "\nStatus: " + status);
  15. });
  16. });
  17. });
  18. </script>
  19. </head>
  20. <body>
  21. <button>向页面发送 HTTP POST 请求并返回结果</button>
  22. </body>
  23. </html>

$.post() 的第一个参数是我们要请求的 URL ("demo_post.ashx")。

然后我们传入一些数据,与请求一起发送(name 和 city)。

"demo_post.ashx" 中的服务端代码读取参数,对其进行处理,并返回结果。

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

提示:下面是 ASHX 文件的代码 ("demo_post.ashx"):

  1. public void ProcessRequest(HttpContext context)
  2. {
  3. context.Response.ContentType = "text/plain";
  4. context.Response.Write("这是一个 asp.net 文件");
  5. }

jQuery AJAX 参考

有关所有 jQuery AJAX 方法的完整概述,请访问本站的 jQuery AJAX 参考