ajax认识:

1. ajax这是间client与server机制。但这一机制是在前台的,利用前台的闲置功能,来进行前台与后台的数据交流,以达到增强用户体检。降低server压力,更有效的利用带宽的效果。

2. ajax是採用异步交互的机制。

3. ajax使用于页面局部刷新,按需求验证和取数据。

4. ajax缺点便是浏览器的兼容问题麻烦。与嵌入式移动端对ajax的支持不太理想。

5.ajax已经是一种web开发必备的技术,并且其长处远大于缺点。

6.ajax涉及到的主要技术有7种当中Javascript、XMLHttpRequest、DOM、XML为重点。

7. XMLHttpRequest对象

XMLHttpRequest是XMLHTTP组件的对象。通过这个对象,AJAX能够像桌面应用程序

一样仅仅同server进行
数据层面的交换。而不用每次都刷新界面。也不用每次将数据处

理的工作都交给server来做。这样既减轻 了服务器负担又加快了响应速度、缩短了用

户等待的时间。

Javascript

Javascript一直被定位为client的脚本语言。应用最多的地方是表单数据的校验。如今

能够通过Javascript 操作XMLHttpRequest。来跟数据库打交道。

DOM

DOM(Document Object Model)是提供给HTML和XML使用的一组API,提供了文件的

表述结构,并能够利用它改变当中的内容和可见物。脚本语言通过DOM才干够跟页面进

行交互。Web开发者可操作及建立文件的属性、方法以及事件都以对象来展现。比方,

document就代表页面对象本身。

XML

通过XML(Extensible Markup Language)。能够规范的定义结构化数据。是网上传输的

数据和文档符合统一的标准。

用XML表述的数据和文档。能够非常easy的让全部程序共享。

 

ajax的创建:

考虑兼容性:

1.浏览器分为IE与非IE,当中非IE是遵循W3C标准的。创建方式基本同样,而IE不一样,其每一个版本号创建的方式也有所不同。

2.创建ajax

</pre><pre name="code" class="php"><script>
function createAjax(){
var request=false;
//window对象中有XMLHttpRequest存在就是非IE,包含(IE7,IE8)
if(window.XMLHttpRequest){
request=new XMLHttpRequest();
有些浏览器是须要覆盖eMimeType
if(request.overrideMimeType){
request.overrideMimeType("text/xml");//指定文本类型
} //window对象中有ActiveXObject属性存在就是IE
}else if(window.ActiveXObject){
//将IE各个版本号的浏览器的參数放在一个数组里面
var versions=['Microsoft.XMLHTTP', 'MSXML.XMLHTTP', 'Msxml2.XMLHTTP.7.0','Msxml2.XMLHTTP.6.0','Msxml2.XMLHTTP.5.0','Msxml2.XMLHTT4.0','MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP']; //遍历这个数组,确定是那个版本号,进行相应AJAX的创建
for(var i=0; i<versions.length; i++)
{
try{
request=new ActiveXObject(versions[i]);
if(request){return request;}
}catch(e){
request=false;
}
}
}
return request;
}
var ajax=createAjax();//创建AJAX
alert(ajax);測试
</script>

ajax的对象的方法与属性

1. XMLHttpRequest对象的属性:

onreadystatechange状态改变的事件触发器

readyState 对象状态(integer): 

      0 = 未初始化 1 = 读取中 2 = 已读取 3 = 交互中 4 = 完毕

responseText server进程返回数据的文本版本号

responseXML server进程返回数据的兼容DOM的XML文档对象

status server返回的状态码, 如:404 = "文件未找到" 、200 ="成功"

statusText server返回的状态文本信息

2. XMLHttpRequest对象的方法:

abort()停止当前请求

getAllResponseHeaders()作为字符串返回完整的headers

getResponseHeader("headerLabel")作为字符串返回单个的header标签

open("method","URL"[,asyncFlag[,"userName"[, "password"]]])设置未决的请求的目标 URL,方法,和其它參数

send(content)
发送请求

setRequestHeader("label", "value")设置header并和请求一起发送

版权声明:本文博客原创文章,博客,未经同意,不得转载。

正确AJAX了解该技术的,创建,应用的更多相关文章

  1. Ajax实例OR技术原理 转自 (http://blog.csdn.net/evankaka )

    摘要:AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术.AJAX 是一种用于创建快速动态网页的 ...

  2. Ajax原理,技术封装与完整示例代码

    在做项目和学习的时候,经常用到Ajax的相关技术,但是这方面的技术总是运用的不是十分好,就寻找相关博客来学习加深Ajax技术相关. 一.Ajax简介 二.同步.异步传输区别 2.1 异步传输 2.2 ...

  3. 框架基础:关于ajax设计方案(三)---集成ajax上传技术

    之前发布了ajax的通用解决方案,核心的ajax发布请求,以及集成了轮询.这次去外国网站逛逛,然后发现了ajax level2的上传文件,所以就有了把ajax的上传文件集成进去的想法,ajax方案的l ...

  4. 2018-06-25 js表单事件、三个高度和Ajax异步通讯技术

    表单事件: onfocus -> 表单控件得到焦点时触发: obj_ipt.onfocus=function(){}; onblur -> 表单控件失去焦点时: onchange -> ...

  5. 介绍Ajax与jQuery技术

    Ajxs技术(异步的JavaScript与XML)已有多种技术的组合 Ajax的优点是什么? 1.可以实现客户端的异步请求操作2.进而在不需要刷新页面的情况下与服务器进行通信,减少用户的等待时间3.减 ...

  6. 框架基础:ajax设计方案(三)--- 集成ajax上传技术 大文件/超大文件前端切割上传,后端进行重组

    马上要过年了,哎,回家的心情也特别的激烈.有钱没钱,回家过年,家永远是舔舐伤口最好的地方.新的一年继续加油努力. 上次做了前端的ajax的上传文件技术,支持单文件,多文件上传,并对文件的格式和大小进行 ...

  7. 前端通信:ajax设计方案(四)--- 集成ajax上传技术 大文件/超大文件前端切割上传,后端进行重组

    马上要过年了,哎,回家的心情也特别的激烈.有钱没钱,回家过年,家永远是舔舐伤口最好的地方.新的一年继续加油努力. 上次做了前端的ajax的上传文件技术,支持单文件,多文件上传,并对文件的格式和大小进行 ...

  8. 基于ajax与msmq技术的消息推送功能实现

    周末在家捣鼓了一下消息推送的简单例子,其实也没什么技术含量,欢迎大伙拍砖.我设计的这个推送demo是基于ajax长轮询+msmq消息队列来实现的,具体交互过程如下图: 先说说这个ajax长轮询,多长时 ...

  9. url路由、模板语言、ajax、用django框架创建表

    1.后台管理的左侧菜单,默认只有第一个页签下面的选项是显示的,点了别的页签再显示别的页签下面的选项,问题是:点了任何菜单的选项后,左侧菜单又成了第一个页签的选项显示,别的页签隐藏,也就是左侧的菜单刷新 ...

随机推荐

  1. 内核编程实例,多文件的Makefile

    内核编程实例,多文件的Makefile 经典的hello word测试 ////# cat hello.c #include <linux/module.h> #include <l ...

  2. Swift - 工具条(UIToolbar)的用法

    1,UIBarButtonItem是工具条按钮,有如下5种init初始化方法: (1)初始化为普通图片按钮 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 1 ...

  3. GrabCut--Opencv篇

    最近因为工作需要,需要实现一个Grabcut函数.Opencv已经提供此函数,今天把opencv的例程拿出来跑了一下,对于简单的背景实现效果还不错. OpenCV中的GrabCut算法是依据<& ...

  4. JSP内置对象Session

    创建和获取客户的会话 setAttribute()与getAttribute() session.setAttribute(String name , Object obj) 如session.set ...

  5. hdu4055 Number String

    Number String Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...

  6. qt qml中PropertyAnimation的几种使用方法

    qml文章 qt qml中PropertyAnimation的几种使用方法 动画应用场景有以下几种: 首先如果一个Rectangle.动画是要改变它的x和y值 1,Rectangle一旦被创建,就要移 ...

  7. mina的编码和解码以及断包的处理,发送自己定义协议,仿qq聊天,发送xml或json

    近期一段时间以来,mina非常火,和移动开发一样.异常的火爆.前面写了几篇移动开发的文章,都还不错.你们的鼓舞就是我最大的动力.好了,废话少说.我们来看下tcp通讯吧. tcp通讯对于java来说是非 ...

  8. 一个用 C 语言写的迷你版 2048 游戏,仅仅有 500个字符

    Jay Chan 用 C 语言写的一个迷你版 2048 游戏,仅仅有 487 个字符. 来围观吧 M[16],X=16,W,k;main(){T(system("stty cbreak&qu ...

  9. Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException

    1.错误描写叙述 usage: java org.apache.catalina.startup.Catalina [ -config {pathname} ] [ -nonaming ] { -he ...

  10. hprose rpc使用实例(同时有Java和Delphi客户端的例子)

    php server <?php require_once('src/Hprose.php'); function hello($name) { echo "Hello $name!& ...