Ajax文件详解
来源:互联网 发布:ubuntu安装ssh server 编辑:程序博客网 时间:2024/05/17 08:00
在学习Ajax的过程中对ajax文件的过程特此记录
一则加深记忆
二则为大家提供一个思考的方式
关于如何敲出一个ajax文件,首先分析其过程,
包括四步:
1.创建Ajax对象
2.连接服务器
3.发送
4.接收
ps:和万维网的工作过程相似
每个万维网都有一个服务器进程监听TCP端口80,一旦有浏览器发出建立连接请求,1.建立TCP连接,2.浏览器发出请求,3.服务器返回响应,4.TCP连接释放。
知道了Ajax内部的过程就方便记忆多了~
首先创建Ajax对象代码段:
1.创建Ajax对象(这里需要处理一个浏览器兼容性问题)
if(window.XMLHttpRequest)//非IE6//Js中用没有定义的变量——报错//用没有定义的属性——undefined//所有的全局变量都是window的属性,所以加window,undefuned就是false{var oAjax=new XMLHttpRequest();}else{var oAjax=new ActiveXObject("Microsoft.XMLHTTP");//IE6}
2.连接服务器
open(方法,文件名,异步传输)
异步传输就是可以多个事情一起做,用的比较多
oAjax.open('GET','a.txt?t='+new Date.getTime(),true);//true表示异步传输
3.发送请求
oAjax.send();
4.接收返回
oAjax.onreadystatechange=function(){//oAjax.readystate浏览器和服务器进行到哪一步了if(oAjax.readyState==4)//读取完成{if(oAjax.status==200)//成功{alert('成功:'+oAjax.responseText);}else{alert('失败'+oAjax.status);}}};
在这里多说一点关于
readyState属性:请求状态
0 (未初始化)还没有调用open()方法
1 (载入)已调用send()方法,正在发送请求
2 (载入完成)send()方法完成,已收到全部响应内容
3 (解析)正在解析响应内容
4 (完成)响应内容解析完成,可以在客户端调用了
function ajax(url, fnSucc, fnFaild){//1.创建Ajax对象if(window.XMLHttpRequest){var oAjax=new XMLHttpRequest();}else{var oAjax=new ActiveXObject("Microsoft.XMLHTTP");}//2.连接服务器(打开和服务器的连接)oAjax.open('GET', url, true);//3.发送oAjax.send();//4.接收oAjax.onreadystatechange=function (){if(oAjax.readyState==4){if(oAjax.status==200){//alert('成功了:'+oAjax.responseText);fnSucc(oAjax.responseText);}else{//alert('失败了');if(fnFaild){fnFaild();}}}};}
0 0
- Ajax文件详解
- ajax文件上传步骤详解
- ajax文件上传步骤详解2
- fileupload做ajax异步上传文件详解
- spring-mvc ajax文件上传详解
- ajax上传文件之ajaxfileupload使用详解
- ajax开发:ajax详解
- ajax 详解
- Ajax详解
- ajax详解
- ajax详解
- Ajax详解
- AJAX 详解
- Ajax详解
- ajax 详解
- AJAX详解
- AJAX详解
- Ajax详解
- 令人赞叹的 MySQL
- Delphi 使用idhttp下載显示进度以及大小
- API 23上的notification实现(读书笔记)
- PL/SQL之一-开篇
- 算法导论-7-2
- Ajax文件详解
- form-data、x-www-form-urlencoded、raw、binary的区别
- Sublime Text3中文版+添加右键菜单
- 正则表达式之(?=pattern)(!=pattern)
- ZooKeeper 基本操作
- delphi idhttp 实战用法
- PL/SQL之二-块结构和组成元素
- 设计模式——代理模式
- 又是惊蛰