第一天
xhr.readystate 获得当前响应状态,当状态为4时,代表响应完成
xhr.status 获得服务器返回的响应状态码,为200代表服务器正常响应
onreadystatechange
XMLHttpRequest() 创建请求对象
xhr.open(,) 请求行
xhr.send() 发送请求
xhr.setRequestHeader('Content-type', "application/x-www-form-urlencoded"); 请求头 xhr.setRequestHeader('Content-Type', 'text/html');
xhr.onload 监听响应事件 Ie8及之前的浏览器不支持 这个有兼容性
onreadystatechange 监听响应事件 所有浏览器都支持 但是回得到三次响应
xhr.responseText 获得响应正文
xhr.respondsXML 获得响应正文 要是服务端返回的是XML数据要用这个方式获取
作判断 if(xhr.readyState == 4 && xhr.statues == 200){
//如果状态码为4才拿响应体
alert(xhr.responseText); xhr.status:拿到服务器响应状态 readyState:拿到浏览器的响应状态码
ajax发起请求的5种状态
0 请求未初始化
1 服务器连接已建立
2 请求接收中
3 请求处理中
4 请求已完成,且响应已就绪
JSON.parse(JSON字符串) 把JSON字符串转换为JS的数组或对象 如果JSON字符串最外层的是{},会得到对象类型,如果JSON最外层的是[],会得到数组类型
JSON.stringify(JS数组或对象) 把JS的数据转换为JSON字符串
json_encode() 转成JSON字符串,把PHP数据转换成JSON字符串
JSON 兼容问题 引入json.js第三方库 IE7及之前不支持
if:ie "<!--[if lte IE 7]>
<script src=""json2.js""></script>
<![endif]-->"
lt 小于
gt 大于
gte 大于等于
lte 小于等于
ActiveXObject('Microsoft.XMLHTTP'); XMLHttpRequest的兼容方法,IE5,6不支持
xhr.setRequestHeader('Content-type', "application/x-www-form-urlencoded"); 请求头
header('Access-Control-Allow-Origin: *') 跨域访问解决方案
template(,) "参数1:模板id,代表用哪个模板
参数2:传入数据,代表用什么数据填充模板"
.serialize() 把这个表单内的所有带name的表单元素拼接成要请求的参数字符串 key1=value1&key2=value2的形式
URL.createObjectURL(this.files[0]); 拿到上传的文件,转成url
contentType:false 让JQ不再生成请求头
location.reload() 方法用于重新加载当前文档
success
loadData() 刷新当前页
.substr(,) " //参数1:从下标几开始截取//参数2:截取多少个长度"
相关文章: