jQuery中的ajax用法案例

什么是 AJAX?

AJAX = 异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。

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

使用 AJAX 的应用程序案例:谷歌地图、腾讯微博、优酷视频、人人网等等。

关于 jQuery 与 AJAX

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

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

提示:如果没有 jQuery,AJAX 编程还是有些难度的。(详见JavaScript的ajax用法案例)

编写常规的 AJAX 代码并不容易,因为不同的浏览器对 AJAX 的实现并不相同。这意味着您必须编写额外的代码对浏览器进行测试。不过,jQuery 团队为我们解决了这个难题,我们只需要一行简单的代码,就可以实现 AJAX 功能。

在此我们仍将用户名的检测,作为案例讲解;

方法一:

 1 <%@ page language="java" contentType="text/html; charset=UTF-8"
 2     pageEncoding="UTF-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
 7 <title>Insert title here</title>
 8 <script type="text/javascript" src="jquery-1.11.3.js"></script>//注意jQuery路径的拷贝!!!
 9 <script type="text/javascript">
10 $(function(){
11     $("#check").click(function(){
12         obj=$.ajax({url:"CheckUser?uname=" + $("#uname").val(),async:false});
13           $("#info").html(obj.responseText);
14         });
15     });    
16 </script>
17 </head>
18 <body>
19 <table>
20 <tr><td>用户名</td><td><input type="text" id="uname"></td></tr>
21 <tr><td><input type="button" value="检测用户"  id="check"></td><td><div id="info"></div></td></tr>
22 </table>
23 </body>
24 </html>

方法二:

 1 <script type="text/javascript" src="jquery-1.11.3.js"></script>
 2 <script type="text/javascript">
 3 $(function(){
 4     $("#check").click(function(){
 5         $("#info").load("CheckUser?uname="+$("#uname").val());//用load方法。
 6     //    obj=$.ajax({url:"CheckUser?uname=" + $("#uname").val(),async:false});
 7           //$("#info").html(obj.responseText);
 8         });
 9     });    
10 </script>

方法三:

 1 <script type="text/javascript" src="jquery-1.11.3.js"></script>
 2 <script type="text/javascript">
 3 $(function(){
 4     $("#check").click(function(){
 5         $.post("CheckUser",{uname:$("#uname").val()},function(data, Status){
 6         $("#info").html(data);//注意这里如果用append来代替,不能返回数据。
 7               
 8         });
 9     
10         //$("#info").load("CheckUser?uname="+$("#uname").val());
11     //    obj=$.ajax({url:"CheckUser?uname=" + $("#uname").val(),async:false});
12           //$("#info").html(obj.responseText);
13         });
14     });    
15 </script>

注意:在用第三种即:post方法时需要将servlet中的doget方法移到dopost中,或者在dopost中加doGet(request,response);

原文地址:https://www.cnblogs.com/xiadongqing/p/5095121.html