ajax的xmlHttpRequest请求
来源:互联网 发布:e8光猫itv端口改成网口 编辑:程序博客网 时间:2024/05/23 13:48
1,ajax原理
Ajax的原理:通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用javascript来操作DOM而更新页面。
2,原生ajax的四个过程/手写原生ajax
a:new一个XHR对象
b:调用open方法
c:send一些数据
d:对过程进行监听,来知道服务器是不是正确地做出了响应,接着可以做一些事情
// GET请求:document.getElementById("search").onclick = function() { var request = new XMLHttpRequest(); request.open("GET", "server.php?number=" + document.getElementById("keyword").value); request.send(); request.onreadystatechange = function() { if (request.readyState===4) { if (request.status===200) { document.getElementById("searchResult").innerHTML = request.responseText; } else { alert("发生错误:" + request.status); } } }}// POST请求document.getElementById("save").onclick = function() { var request = new XMLHttpRequest(); request.open("POST", "server.php"); var data = "name=" + document.getElementById("staffName").value + "&number=" + document.getElementById("staffNumber").value + "&sex=" + document.getElementById("staffSex").value + "&job=" + document.getElementById("staffJob").value;
//post请求必须加上请求表头,而且发送的数据都放在send()中发送 request.setRequestHeader("Content-type","application/x-www-form-urlencoded"); request.send(data); request.onreadystatechange = function() { if (request.readyState===4) { if (request.status===200) { document.getElementById("createResult").innerHTML = request.responseText; } else { alert("发生错误:" + request.status); } } }}
通过哪个属性得到data?
responseText和responseXML。后者是XML解析了的。
XMLHttpRequest 对象的三个重要的属性
存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。
- 0: 请求未初始化
- 1: 服务器连接已建立
- 2: 请求已接收
- 3: 请求处理中
- 4: 请求已完成,且响应已就绪
200: "OK"
404: 未找到页面
在 onreadystatechange 事件中,我们规定当服务器响应已做好被处理的准备时所执行的任务。
当 readyState 等于 4 且状态为 200 时,表示响应已就绪:
处理文本响应
responseText和responseXML;
通过XMLHttpRequest对象的getResponseHeader方法获取响应的内容类型,
若为text/plan或text/html,则通过responseTest获取响应文本;
若为text.xml,则通过responseXML获取响应文本。
链接:http://www.jianshu.com/p/05de7c1ef080
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
阅读全文
0 0
- ajax的xmlHttpRequest请求
- 基于 XMLHttpRequest实现的Ajax请求
- AJAX http请求 XMLHttpRequest
- XMLHTTPRequest/Ajax请求 和普通请求的区别
- 不用xmlhttprequest,实现ajax请求
- AJAX 多次发送异步请求的 XmlHttpRequest 对象的设置
- AJAX系列二之XMLHttpRequest的请求和响应
- AJAX概念介绍:2.2 XMLHttpRequest对象的创建、请求、响应
- Ajax的window.XMLHttpRequest
- ajax的XMLHttpRequest对象
- Ajax的XMLHttpRequest对象
- ajax的xmlHttpRequest对象
- Ajax的XMLHttpRequest对象
- ajax的XMLHttpRequest()对象
- AJAX-XMLHttpRequest的认识
- ajax的核心XMLHttpRequest
- Ajax的XMLHttpRequest
- 解决浏览器在本地无法跨域请求,不支持Ajax请求,XMLHttpRequest不能加载的问题
- C++ explicit关键字详解
- mybatis 使用collection标签实现一对多查询(多分页使用)
- ViewPager动画效果(一)
- fatfs文件系统使用描述
- hibernate进行多表查询每个表中各取几个字段,也就是说查询出来的结果集没有一个实体类与之对应如何解决?
- ajax的xmlHttpRequest请求
- c语言指针做函数参数,使用指针地址(二级指针)在被调函数中修改主调函数的指针。
- 669. Trim a Binary Search Tree
- HTTP状态码
- 全志R16平台tinav2.1系统下调通rtl8188eu(分色排版)
- 牛客原型链练习题(持续更新)
- emmc
- 8个值得模仿的明星穿搭,各个时尚有型
- heapq( Heap queue algorithm)库