ajax
ajax优点
- 不需要插件支持(一般浏览器且默认开启 JavaScript 即可)
- 用户体验极佳(不刷新页面即可获取可更新的数据)
- 提升 Web 程序的性能(在传递数据方面做到按需放松,不必整体提交)
- 减轻服务器和带宽的负担(将服务器的一些操作转移到客户端)
- 缺点:搜索引擎的支持度不够(因为搜索引擎爬虫 暂时 还不能理解 JS 引起变化数据的内容)
ajax过程
1、创建XMLHttpRequest对象
new XMLHttpRequest()
new ActiveXObject(‘Microsoft.XMLHTTP’) IE下兼容(IE7一下 6)
2、准备发送
open()
三个参数的含义
1、提交方式 Form-method
2、提交地址 Form-action
3、异步(同步)
3、执行发送动作
send()
4、指定回调函数
onreadystatechange事件
readyState属性:请求状态
0 (初始化)还没有调用open()方法
1 (载入)已调用send()方法,正在发送请求
2 (载入完成)send()方法完成,已收到全部响应内容
3 (解析)正在解析响应内容
4 (完成)响应内容解析完成,可以在客户端调用了
status属性:服务器(请求资源)的状态 http状态码
5,返回内容
responseText:返回以文本形式存放的内容
responseXML:返回XML形式的内容
get和post区别:
send(要发送的数据):发送请求
中文编码
缓存
POST:setRequestHeader(类型, 内容):设置请求头
“Content-Type”,"application/x-www-form-urlencoded”
前后台传输数据 只能传输字符串
处理字符串
responseText 是字符串
需要格式化 JSON.pase()
http状态码 xhr.status上
200——交易成功
404——没有发现文件、查询或URl