AJax技术

JavaScript实现Ajax小结

字号+ 作者:H5之家 来源:H5之家 2015-10-16 17:15 我要评论( )

置顶文章:《纯CSS打造银色MacBook Air(完整版)》上一篇:《TCP的三次握手和四次挥手》

JavaScript实现Ajax小结

置顶文章:《纯CSS打造银色MacBook Air(完整版)》上一篇:《TCP的三次握手和四次挥手》作者主页:myvin博主QQ:851399101(点击QQ和博主发起临时会话)::selection{background:blue;color:red;}span{color:red;}JavaScript实现Ajax小结Ajax大家应该都很熟悉,在此总结一下备忘。至于Ajax的优点就不多说了,实现动态刷新,提升用户体验,缺点也还不少,比如破坏了浏览器的back功能,同一个URL打开的界面并不是完全相同,还有安全性能等方面,但是这些也阻挡不了我们使用Ajax的脚步~~~这里以表单为例说一下实现Ajax的步骤:先从表单中获取我们需要的数据然后建立相应的URL设置onreadystatechange函数打开连接发送请求以上就是Ajax的实现步骤,接下来简单分步总结下。首先是关于xrh对象的建立。function creatXhr(){var xhr=null;if(window.XMLHttpRequest){xhr=new XMLHttpRequest();}else{xhr=new ActiveXObject("Microsoft.xhr");}}稍完整的可以这样写:function creatXhr(){var xhr=null;try{ xhr=new ActiveXObject("Msxml2.XMLHTTP");}catch (e){ try { xhr=new ActiveXObject("Microsoft.XMLHTTP"); }catch (e2){ xhr=false; }}if(!xmlHttp && typeof XMLHttpRequest != 'undefined') { xhr=new XMLHttpRequest();}}以上对ie和非ie浏览器多做了兼容处理。然后就该发送Ajax请求了,下面以一个表单项country为例:function callReqest(){var country=document.getElementById('country').value;if((country==null)||(country==''))return;var url='example.php?country='+encodeURIComponent(country);xhr.onreadystatechange=update;xhr.open('GET',url,true);xhr.send(null);}以上获取了一个country表单项,onreadystatechange函数是readystate发生变化时触发的事件,可以以此来判断是否需要发生动作。onreadystatechange函数如下:function onreadystatechange(){if((xhr.onreadystatechange==4)&&((xhr.state==200)||((xhr.state>200)&&(xhr.state在onreadystatechange等于4的时候,说明资源已然完全下载到客户端了,可以使用了,同时查看状态码,在200到300之间,左闭右开,即可进行刷新,这里只是简单的将responseText给了一个表单项,当然也可以返回XML等相关数据,相关内容可查看其他相关介绍。最后,至于触发Ajax,可以在表单的country里面添加onChange事件,这样用户在输入表单时就会触发Ajax了。转载请记得说明作者和出处哦-.-作者:myvin原文出处:上一篇:《TCP的三次握手和四次挥手》置顶文章:《纯CSS打造银色MacBook Air(完整版)》

最新评论

最新博文

  • 1

    移动网页制作经验

    大概四个月前做了个比较常见的手机端的项目,日子久了,难得有心情来总结下地址:前言:页面依赖z和自适应布局使用,适应终端最小宽度为,要用一段用了好久的代码z

  • 2

    mysql中bigint、int、mediumint、smallint 和 tinyint的取值范围

    y数据库设计,其中,对于数据性能优化,字段类型考虑很重要,搜集了些资料,整理分享出来,这篇为有关y整型、、、和y的语法介绍,如下:、从到

  • 3

    C# 内存管理优化畅想(三)---- 其他方法&结语

    允许对象“嵌入式”组合:说白了,就是允许一个对象包含其他对象(包含的是对象本身,而非其引用),这样就把多个对象合并成了一个对象,减少了对象的数量,自然的压力就轻了。被包含的对象其实就相当于一个结构体(

  • 4

    Tomcat源码分析——请求处理准备

    前言谈起的诞生,最早可以追溯到年。近年来,始终是使用最广泛的服务器,由于其使用语言开发,所以广为程序员所熟悉。很多人早期的项目,由程序员自己实现页面或者接受请求,后来借助、、

  • 5

    程序员的诞生

    年夏天,满怀失望和忐忑,啊从大学退学了。本科正经八经的大学,啊说退也就退了。反正大学也就是混混日子,到哪不是混日子——啊这样想到。关键是退完学要干嘛呢,啊在大学读的是理工专业,大学所学唯一让他感兴趣的

  • 6

    Fast RCNN 训练自己数据集 (1编译配置)

    训练自己数据集编译配置是在的基础上增加了整个的训练过程和测试过程比快了许多。别的一些细节不展开,过几天会上传的论文笔记。性能上略有上

  • 7

    回顾自己的建站过程,给各位未来的站长探个路

    一直以来都有一个梦想,拥有自己的网站。这个梦想在上学时代一直只是个奢望,因为穷到经常去食堂打工。毕了业为了能够活下去找了一个公司做安卓开发,梦想就快被遗忘了。最近忽然脑洞浇油,突发奇想,搞个自己的网站

  • 8

    Android 高仿豌豆荚 一键安装app 功能 实现

    以往我们那些应用市场帮我们安装的时候我们都得点确定,当然你如果以后不用点确定也能自动安装了,后来豌豆荚推出了一个功能非的手机也能不点确定直接帮你安装好。(如果不理解我这段话意思的同学赶紧试用豌豆荚就知

  • 9

    WPF中查看PDF文件

    需要打开文件时,我们第一印象就是使用。在开发中,经常会遇到需要展示文件的需求。我们会借助于的控件来实现。不过这需要客户的机器上安装有,并且使用的控件会在顶部有一个隐藏不

  • 10

    传参时,使用引用替换变量

    第一个原因。。。默认使用变量的方式传递对象。假如没有另外指定,函数的参数都是以实参的副本为初值,而函数的返回值也是一个复件。这些复件由对象的y构造函数产出,这会让值传递成为昂贵的操作。来一个简单的例子

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    网友点评