关于ajax
1.ajax:“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。
2.ajax的js写法
//创建对象 var request; if(window.XmlHttpRequest) { request = new XmlHttpRequest(); } else //IE { request = new ActiveXObject(Microsoft.XMLHTTP); }
//get请求 request.open("get","service.php?text="+document.getElementByid("txt").value); request.send(); request.onreadystatechange = function(){ if(request.readyState === 4) //连接成功 { if(request.status === 200) //客户端请求已成功 { alert(request.responseText); } else { alert("发生错误:" + request.status); } } }
//post请求 request.open("POST","service.php"); var data = "name=jane&sex=男&age=19"; request.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); request.send(data); request.onreadystatechange = function(){ if(request.readyState === 4) //连接成功 { if(request.status === 200) 客户端请求已成功 { alert("操作成功!"); } else { alert("操作有误!"); }}}
get请求:一般用于查询数据,用url传参
post请求:用于修改服务器的数据,不限制发送信息的数量
readyState:
0 - (未初始化)还没有调用send()方法
1 - (载入)已调用send()方法,正在发送请求
2 - (载入完成)send()方法执行完成,已经接收到全部响应内容
3 - (交互)正在解析响应内容
4 - (完成)响应内容解析完成,可以在客户端调用了
request.status:
200-确定,客户端请求已成功
403-禁止访问
404-未找到
3.ajax的jQuery写法
//jQuery get请求 $.ajax({ type:"get", url:"service.php?name=jane", dataType:"json", success:function(data){ if(data.success){ alert(data.msg); } else{ alert("参数错误!"); } }, erorr:function(jqXHR){ alert("出现错误:"+jqXHR.status); } });
//jQuery post请求 $.ajax({ type: "post", url: "service.php", dataType: "json", data: { name:"jane", sex:"男", age:19 }, success: function(data){ if(data.success){ alert(data.msg); } else{ alert("出现错误:"+data.msg); } }, erorr: function(jqXHR){ alert("出现错误:"+jqXHR.status); } })