六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 49|回复: 0

Ajax对象杂谈

[复制链接]

升级  42%

3

主题

3

主题

3

主题

童生

Rank: 1

积分
21
 楼主| 发表于 2013-1-29 10:35:31 | 显示全部楼层 |阅读模式
对于Ajax技术现在很多人都不陌生了,习惯了用ExtJS或Jquery等JS库封装的Ajax。记得哪天朋友问题怎样手动创建一个XMLHttpRequest 对象?愣了半分钟,还是写一写吧。

var xmlhttp;function createRequest() {    if (window.ActiveXObject) {// code for IE6, IE5        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");    }    else if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari        xmlhttp = new XMLHttpRequest();    }}createRequest();function sendRequest(){if(xmlhttp){xmlhttp.open("GET", url, true);xmlhttp.send(null);xmlhttp.onreadystatechange = getRequestAndManager;}}function getRequestAndManager(){if (xmlhttp_request.readyState == 4) {// 收到完整的服务器响应if (xmlRequest.status == 200) {var requestReturnStr = xmlhttp.responseText;var json = eval("("+requestReturnStr+")");}} }与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。如果不需要使用缓存数据可以在URL后面添加一个时间戳,以保证每次请求的数据都和服务器保持一致。
 然而,在以下情况中,请使用 POST 请求:

  • 无法使用缓存文件(更新服务器上的文件或数据库)
  • 向服务器发送大量数据(POST 没有数据量限制)
  • 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠
 
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表