书归正传,AJAX其实不是一种语言,甚至不是一种技术,它是几种技术的有机结合(Javascript、XML、CSS等等,其实有时还会用到更多的技术,比如偶钟情滴java^_^,就像推War3,要多个兵种加起来用才够厉害。。。跑题了~~~~)。Javascript作为脚本语言,用Javascript操作XML和CSS,用XML做为数据的存储介质,用CSS显示效果和状态。
这里不得不提的一项内容就是XMLHttpRequest,偶认为这是真正Ajax的核心东东(可能是偶见识太少了- -!),它可以模拟Request对象向服务器提交请求,并返回请求结果,这就摒弃了原有的让人等的好烦的白白的浏览器显示页!!用句不怎么术的术语说就是“动态无刷新”。废话不说,来看看这么强大的DD是怎么实现的~~~
不同的浏览器实现的方式不一样,对于Mozilla, Firefox, Safari, 和Netscape浏览器:
var xmlhttp=new XMLHttpRequest()
对于Internet Explorer:
var xmlhttp=CreatActiveObject("Micosoft.XMLHttp")
编程要点:
---------------------------属性--------------------------------
属性 |
值类型 |
说明 |
onreadystatechange |
回调函数名称的字符串 |
指明回调函数 |
readyState |
请求状态代码,共四种状态: 0 未初始化 1 正在装载 2 装载完毕 3 交互中 4 完成
|
XMLHttpRequest对象的请求状态 |
responseText |
返回数据的字符串形式 |
以字符串形式存储该请求返回的数据 |
responseXML |
返回一个Xml Document对象 |
以XML数据形式存储请求返回的数据 |
status |
请求所返回的HTTP返回码: "100" : Continue "101" : witching Protocols "200" : OK "201" : Created "202" : Accepted "203" : Non-Authoritative Information "204" : No Content "205" : Reset Content "206" : Partial Content "300" : Multiple Choices "301" : Moved Permanently "302" : Found "303" : See Other "304" : Not Modified "305" : Use Proxy "307" : Temporary Redirect "400" : Bad Request "401" : Unauthorized "402" : Payment Required "403" : Forbidden "404" : Not Found "405" : Method Not Allowed "406" : Not Acceptable "407" : Proxy Authentication Required "408" : Request Time-out "409" : Conflict "410" : Gone "411" : Length Required "412" : Precondition Failed "413" : Request Entity Too Large "414" : Request-URI Too Large "415" : Unsupported Media Type "416" : Requested range not satisfiable "417" : Expectation Failed "500" : Internal Server Error "501" : Not Implemented "502" : Bad Gateway "503" : Service Unavailable "504" : Gateway Time-out "505" : HTTP Version not supported
其实实际用的时候记着200是OK(本地调试时OK状态会返回0),404是NO FOUND就可以了! |
该XMLHttpRequest所做的请求返回的HTTP返回码 |
statusText |
字符串,此属性只读,以BSTR返回当前请求的响应行状态,此属性仅当数据发送并接收完毕后才可获取。 |
XMLHttpRequest所做的Http请求返回信息 |
---------------------------方法---------------------------
方法 |
参数 |
返回值 |
说明 |
abort() |
无 |
无 |
取消当前的请求 |
getAllResponseHeaders() |
无 |
以字符串形式返回所有的HTTP头 |
以字符串形式返回所有的HTTP头 |
getResponseHeader("headerName") |
headerName参数指定的http头字符串 |
返回指定的HTTP头字符串 |
从响应信息中获取指定的http头 |
open('method','URL',async,'uname','pswd') |
method字符串指定用何方法发送请求,比如POST、GET、PUT及PROPFIND。大小写不敏感 URL字符串指定请求的HTTP地址,可以为绝对路径也可以为相对路径 async布尔值指定请求是否为异步方式,默认为true。如果为真,当状态改变时会调用onreadystatechange属性指定的回调函数。 uname字符串指定用于服务器验证用户名,如果服务器需要验证,此处指定用户名,如果未指定,当服务器需要验证时,会弹出验证窗口。 pswd字符串指定验证信息中的密码部分,如果用户名为空则此部分被忽略。
|
无 |
创建一个新的http请求,并指定此请求的方法、URL以及验证信息 |
send(content) |
content参数可以是任何想发送到服务器端的数据 |
无 |
发送请求到http服务器并接收回应,此方法的同步或异步方式取决于open方法中的bAsync参数,如果bAsync == False,此方法将会等待请求完成或者超时时才会返回,如果bAsync == True,此方法将立即返回。如果发送的数据为XML DOM object,则回应将被编码为在xml文档中声明的编码,如果在xml文档中没有声明编码,则使用默认的UTF-8。 |
setRequestHeader("label","value") |
label字符串指定头名称 value字符串指定头的值 |
|
单独指定请求的某个http头,如果已经存在已此名称命名的http头,则覆盖之。此方法必须在open方法后调用。 |
分享到:
相关推荐
最后一部分通过几个大型的实例,让读者深入领会Ajax技术在实际网络项目中的优势,也让读者体验这种优势所带来的优越性能。 本书适用于初、中级网络开发者,对于高级开发人员也很有启发。没有接触过Ajax的入门者...
Ajax这个概念的最早提出者Jesse James Garrett认为:Ajax是Asynchronous JavaScript and XML的缩写。Ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在一在同共的协作中发挥各自的作用,它包括: ...
Ajax的概念是asynchronous javascript and xml的简写。 不是一项具体的技术,而是几门技术的综合应用。 其核心只不过是要在javascript中调用一个XMLHttpRequest的javascript类,这个类可以与Web服务器使用HTTP协议...
他还揭开了 Ajax 核心概念的神秘面纱,包括 XMLHttpRequest 对象。 五年前,如果不知道 XML,您就是一只无人重视的丑小鸭。十八个月前,Ruby 成了关注的中心,不知道 Ruby 的程序员只能坐冷板凳了。今天,如果想跟...
文档见底部npm i ajax-js / yarn add ajax-js整理ajax设计方案原因如下从资源合理利用的角度以及网站优化角度去想,每次为了那几个功能,去引用一个框架,不划算拜读了w3c的ajax的设计方案,包括level1和level2的...
在谈到 Ajax 时,实际上涉及到多种技术,要灵活地运用它必须深入了解这些不同的技术(本系列的头几 篇文章将分别讨论这些技术)。好消息是您可能已经非常熟悉其中的大部分技术,更好的是这些技术都很 容易学习,并不...
为了连接美国的少数几个顶尖研究机构,人们设计了最早的“Internet”,以便共同开展科学研究。不论是图书馆员、核物理学家,还是计算机科学家,都必须学习一个相当复杂的系统。1962年,麻省理工学院(MIT)的J.C.R. ...
二、引用Ajax这个概念的最早提出者Jesse James Garrett认为: Ajax是Asynchronous JavaScript and XML的缩写。 Ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在一在同共的协作中发挥各自的...
二、引用 Ajax这个概念的最早提出者Jesse James Garrett认为: Ajax是Asynchronous JavaScript and XML的缩写。 Ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在一在同共的协作中发挥...
二、引用 Ajax这个概念的最早提出者Jesse James Garrett认为: Ajax是Asynchronous JavaScript and XML的缩写。 Ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在一在同共的协作中发挥各自...
如名字所示AJAX的概念中最重要而最被忽视的是他也是一种JavaScript编程语言。JavaScript是一种粘合剂使AJAX应用的各部分集成在一起。在大部分时间,JavaScript通常被服务端开发人员认为是一种企业级应用不需要使用...
Internet的迅猛发展带来了一次又一次的技术革命,而这场...从数据分析这一基础概念谈起,分析了它的基本概念、分析步骤、过程实施等几个方面,然后围绕这一核心概念,将数据分析系统的组成、特征、分类进行了深入的剖析……
最近跨域问题比较多,而且自己刚好也看到这一块,就总结了一下,关于JSONP的东西百度的话东西确实很多,很多人都是复制别人的,如此下去,其实找的资料就那么几份,关键是我还看不懂,可能是能力问题吧,自己经过很...
网络爬虫是数据采集的一种方法,实际项目开发中,通过爬虫做数据采集一般有以下几种情况: 1)搜索引擎 2)竞品调研 3)舆情监控 4)市场分析 网络爬虫的整体执行流程 1)确定一个(多个)种子网页 2)进行数据的...
本文将简单地介绍Ext的几个基本概念,和如何快速地做出一个动态的页面并运行起来,假设读者已具备了一些JavaScript经验和初级了解HTML Dom。 目录 • 1 下载Ext • 2 开始! • 3 Element:Ext的核心 • 4 获取多个...
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。 本书是第4版,经过了全面的更新...
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。 本书是第4版,经过了全面的更新...
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。 本书是第4版,经过了全面的...
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。 本书是第4版,经过了全面的...
本书将PHP开发与MySQL应用相结合,分别对PHP和MySQL做了深入浅出的分析,不仅介绍PHP和MySQL的一般概念,而且对PHP和MySQL的Web应用做了较全面的阐述,并包括几个经典且实用的例子。. 本书是第4版,经过了全面的...