ajax

1、原始 ajax 类型:

 1 /*
 2      method:
 3              请求方式,值为get或者post
 4      url:请求地址
 5      data:没有值需要传入null
 6          有请求数据则传入字符串数据,格式为"a=1&b=2";
 7      deal200:
 8              接受一个带有一个形参的js函数对象,形参接收的实参是ajax引擎对象
 9      deal404:接受一个js函数对象
10      deal500:接受一个js函数对象
11  */
12     function myAjax(method,url,data,deal200,deal404,deal500,async){        
13         //创建ajax引擎对象
14             var ajax=getAjax();
15             //复写onreadystatechange函数
16             ajax.onreadystatechange=function(){
17                 //判断Ajax状态吗
18                 if(ajax.readyState==4){
19                     //判断响应状态吗
20                     if(ajax.status==200){
21                         if(deal200){
22                             deal200(ajax);
23                         }
24                     }else if(ajax.status==404){
25                         if(deal404){
26                             deal404();
27                         }                        
28                     }else if(ajax.status==500){
29                         if(deal500){
30                             deal500();
31                         }
32                     }
33                 }
34             }
35         //发送请求
36         if("get"==method){
37             ajax.open("get",url+(data==null?"":"?"+data),async);
38             ajax.send(null);
39         }else if("post"==method){
40             ajax.open("post",url,async);
41             ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
42             ajax.send(data);
43         }
44         
45     }    
46 /* --------------------------------------------------------------------------- */
47 function getAjax(){
48     var ajax;
49     if(window.XMLHttpRequest){//火狐
50         ajax=new XMLHttpRequest();
51     }else if(window.ActiveXObject){//ie
52         ajax=new ActiveXObject("Msxml2.XMLHTTP");
53     }
54     
55     return ajax;
56 }    

2、Jqery 的 ajax:

 1 $.ajax({
 2     url : "user.action",
 3     type : "post",
 4     dataType : "json",
 5     data : {
 6               cmd : "login",
 7                 username : uname,
 8                 password : pword,
 9                 verifycode : vcode
10                     },
11     success : function(data){
12               if(data.msgId == 1){
13                      //跳转到主页
14                      window.location.href = "index.jsp";
15               }else if(data.msgId == 2){
16                      $("#passwordlabel").text(data.msgContent)
17               }else if(data.msgId == 3){
18                       $("#verifycodelabel").text(data.msgContent)
19               }
20      }
21 })

3、ajaxForm:

 1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
 2 <%
 3     String path = request.getContextPath();
 4     String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
 5 %>
 6 
 7 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 8 <html>
 9 <head>
10 <base href="<%=basePath%>">
11 <title>My JSP 'testajaxform.jsp' starting page</title>
12 </head>
13 <body>
14     <form id="myForm" action="ajaxform" method="post">
15         Name: <input id="uname" type="text" name="name" /> 
16         Comment:<textarea name="comment"></textarea>
17         <input type="submit" value="Submit Comment" />
18     </form>
19     
20     <script src="js/jquery.min.js"></script>
21     <script src="js/jquery.form.js"></script>
22 
23     <script type="text/javascript">
24         $(function(){
25             //ajaxForm中的函数就是success
26             $("#myForm").ajaxForm({
27                 beforeSubmit:function(){
28                     return true;
29                 },
30                 clearForm : true,
31                 dataType:"json",
32                 success:function(){
33                     
34                 }
35             })
36         })
37     </script>
38     
39 </body>
40 </html>
原文地址:https://www.cnblogs.com/maigy/p/10923657.html