文档库 最新最全的文档下载
当前位置:文档库 › ajax缓存问题

ajax缓存问题

ajax缓存问题

Ajax缓存问题

引起缓存的原因:

AJAX的缓存是由浏览器维持的,对于发向服务器的某个url,ajax仅在第一次请求时与服务器交互信息,之后的请求中,ajax不再向服务器提交请求,而是直接从缓存中提取数据。

有些情况下,我们需要每一次都从服务器得到更新后数据。思路是让每次请求的url都不同,而又不影响正常应用:在url之后加入随机内容。

当浏览器提交相同的地址时,此时Ajax不在重复提交,只调用以前处理过的缓存,所以这时就出现数据库内容不能被刷新

解决方法:

使用Ajax中遇到的一个问题,手动刷新页面时,没有提交到后台处理,总显示第一次载入的数据。

页头已加入防缓存设置:

可结果依旧。

baidu了一下,找到相关资料。

解决方法:让提交的URL每次都向服务器端发送请求,而不是使用缓存。

方法一:加时间戳 var url = BaseURL + "&timeStamp=" + new Date().getTime(); 方法二:加随机数 var url = BaseURL + "&r=" + Math.random();

方法三:在XMLHttpRequest.send();前加上

XMLHttpRequest.setRequestHeader("If-Modified-Since","0");

方法四:在XMLHttpRequest.send();前加上

XMLHttpRequest.setRequestHeader("Cache-Control","no-cache");

ajax原理介绍

ajax原理介绍 AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。 主要包含了以下几种技术 Ajax(Asynchronous JavaScript + XML)的定义 基于web标准(standards-based presentation)XHTML+CSS的表示; 使用 DOM(Document Object Model)进行动态显示及交互; 使用 XML 和 XSLT 进行数据交换及相关操作; 使用 XMLHttpRequest 进行异步数据查询、检索; 使用 JavaScript 将所有的东西绑定在一起。英文参见Ajax的提出者Jesse James Garrett的原文。 类似于DHTML或LAMP,AJAX不是指一种单一的技术,而是有机地利用了一系列相关的技术。事实上,一些基于AJAX的“派生/合成”式,derivative/composite)的技术正在出现,如“AFLAX”。 AJAX的应用使用支持以上技术的web浏览器作为运行平台。这些浏览器目前包括:Mozilla、Firefox、Internet Explorer、Opera、Konqueror及Safari。但是Opera不支持XSL格式对象,也不支持XSLT。 与传统的web应用比较 传统的web应用允许用户填写表单(form),当提交表单时就向web服务器发送一个请求。服务器接收并处理传来的表单,然後返回一个新的网页。这个做法浪费了许多带宽,因为在前後两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。 与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP 或其它一些基于XML的web service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。

Ajax实现原理

Ajax实现原理 Ajax的工作 Ajax直觉认识:我们发送一个请求,但是这个请求比较特殊它是异步的,也就是说客户端是不会感觉到的。在发送这个请求的时候我们绑定了一个事件,这个事件会监控我们发送请求的状态,并且每次状态改变都会触发,所以我们就可以根据不同的状态让他执行不同的操作。请求到达服务器端的后服务器端根据相应的请求返回对应的信息,这个返回信息我们可以取得并且是异步得到,不会引起客户端刷新。既然在上面已经绑定了监控状态变化的事件,我们就可以在那里首先做好在得到返回信息要做的处理(当然如果失败也会有相应的状态我们也会做出相应的处理),我们在处理中得到返回信息通过javascript在客户端做相应操作即可。 Ajax核心—XMLHttpRequest 上面我们大概感受了一下Ajax的过程,我们发现发送异步请求才是核心,事实上它就是XMLHttpRequest,整个Ajax之所以能完成异步请求完全是因为这个对应可以发送异步请求的缘故。而且我们又发现上面那个事件就是整个处理过程的核心,可以根据不同状态执行不同操作,其实它就是XMLHttpRequest的方法onreadystatechange,它在每次状态发生改变时都会触发。那么是谁取得的返回信息呢?它就是XMLHttpRequest的另一个方法responseText(当然还有responseXML)。(⊙o⊙)哦,我们还没有说发送给谁以及执行发送操作,这两个就是XMLHttpRequest的open和send方法。Y(^o^)Y,其他的当然还有了,我们直接列出来吧:

代码实现 ajax.js文件代码,也是我们说的主要内容,是一个javascript文件,所有的Ajax操作都在这里: view plaincopy to clipboardprint? 1.//与服务器通信 2.function talktoServer(url) { 3. var req = newXMLHTTPRequst(); 4. var callbackHandler = getReadyStateHandler(req); 5. req.onreadystatechange = callbackHandler; 6. req.open("POST", url, true); 7. req.setRequestHeader("Content-Type", "application/x-www-form-urlen coded"); 8. var testmsg = document.getElementById("testmsg"); 9. var msg_value = testmsg.value; 10. req.send("msg="+msg_value); 11.} 12.//创建XMLHTTP对象 13.function newXMLHTTPRequst() { 14. var xmlreq = false; 15. if (window.XMLHttpRequest) { 16. xmlreq = new XMLHttpRequest(); 17. } else if (window.ActiveXobject) { 18. try{ 19. xmlreq=new ActiveXObject("Msxm12.XMLHTTP"); 20. } catch (e1) {

ajax的工作原理

1、ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth、google suggest以及gmail等对ajax技术的广泛应用,催生了ajax的流行。而这也让微软感到无比的尴尬,因为早在97年,微软便已经发明了ajax中的关键技术,并且在99年IE5推出之时,它便开始支持XmlHttpRequest对象,并且微软之前已经开始在它的一些产品中应用ajax,比如说MSDN网站菜单中的一些应用。遗憾的是,不知道出于什么想法,当时微软发明了ajax的核心技术之后,并没有看到它的潜力而加以发展和推广,而是将它搁置起来。对于这一点来说,我个人是觉得非常奇怪的,因为以微软的资源和它的战略眼光来说,应该不会看不到ajax技术的前景,唯一的解释也许就是因为当时它的主要竞争对手Netscape的消失反而使它变得麻痹和迟钝,毕竟巨人也有打盹的时候,比如IBM曾经在对微软战略上的失误。正是这一次的失误,成就了它现在的竞争对手google在ajax 方面的领先地位,而事实上google目前在ajax技术方面的领先是微软所无法达到的,这一点在后面我讲述ajax缺陷的时候也会提到。现在微软也意识到了这个问题,因此它也开始在ajax领域奋起直追,比如说推出它自己的ajax框架atlas,并且在.NET2.0也提供了一个用来实现异步回调的接口,即ICallBack接口。那么微软为什么对自己在ajax方面的落后如此紧张呢?现在就让我们来分析一下ajax技术后面隐藏的深刻意义。 2、ajax技术的意义 我们在平时的开发中都多多少少的接触或者应用到了ajax,谈到ajax技术的意义,我们关注得最多的毫无疑问是提升用户的体验。但是,如果我们结合将来电脑和互联网的发展趋势,我们会发现ajax技术在某些方面正好代表了这种趋势。为什么这样说呢?我们知道,自从电脑出现以来,一直是桌面软件占据着绝对主导的地位,但是互联网的出现和成功使这一切开始发生着微妙的变化。相当一部分的人都相信,迟早有一天,数据和电脑软件将会从桌面转移到互联网。也就是说,将来的电脑有可能抛弃笨重的硬盘,而直接从互联网来获取数据和服务,我记得我念大学的时候,有位教授给我们上课的时候,曾经设想过这样一种情景,也许在将来的电脑桌面上,没有任何多余的软件和程序,而仅仅只有一个IE,虽然现在看起来我们距离这一天还很遥远,并且这其中还有很多的问题需要解决,但是我觉得这个并非梦想,而是迟早将实现的现实。那么,这其中的主要问题就是互联网的连接不稳定,谁也不愿意看着自己的电脑从服务器一点一滴的下载数据,那么,ajax是不是解决了这个问题呢,说实话,与其说ajax解决了这个问题,倒不如它只是掩盖了这个问题,它只是在服务器和客户端之间充当了一个缓冲器,让用户误以为服务没有中断。精确的说,ajax 并不能提高从服务器端下载数据的速度,而只是使这个等待不那么令人沮丧。但是正是这一点就足以产生巨大的影响和震动,它实际上也对桌面软件产生了巨大的冲击。这一点我用一个例子来说明,我们可以比较一下Outlook Express和Gmail,前者是典型的桌面软件,后者是ajax所实现的B/S模式,实际上后者目前已经在慢慢取代前者了,Gmail在收发邮件的时候已经和Outlook Express的功能几乎没有差别了,而且它不需要安装客户端程序。这就是为什么微软对ajax所带来的冲击有着如此的恐惧心理,并且在它前不久所进行的调查之中,将google看做他们未来十年内的主要竞争对手的主要原因之一。当然,这种变化也并不会将桌面软件全部淘汰,现有的浏览器还没有一个能像PhotoShop等桌面程序那样处理复杂的图像。但是我们也不能忽视它带来的影响和冲击。 3、关于ajax的名字

ajax的工作原理电子教案

a j a x的工作原理

1、ajax技术的背景 不可否认,ajax技术的流行得益于google的大力推广,正是由于google earth、google suggest以及gmail等对ajax技术的广泛应用,催生了ajax的流行。而这也让微软感到无比的尴尬,因为早在97年,微软便已经发明了ajax中的关键技术,并且在99年IE5推出之时,它便开始支持XmlHttpRequest对象,并且微软之前已经开始在它的一些产品中应用ajax,比如说MSDN网站菜单中的一些应用。遗憾的是,不知道出于什么想法,当时微软发明了ajax的核心技术之后,并没有看到它的潜力而加以发展和推广,而是将它搁置起来。对于这一点来说,我个人是觉得非常奇怪的,因为以微软的资源和它的战略眼光来说,应该不会看不到ajax技术的前景,唯一的解释也许就是因为当时它的主要竞争对手Netscape的消失反而使它变得麻痹和迟钝,毕竟巨人也有打盹的时候,比如IBM曾经在对微软战略上的失误。正是这一次的失误,成就了它现在的竞争对手google在ajax方面的领先地位,而事实上google目前在ajax技术方面的领先是微软所无法达到的,这一点在后面我讲述ajax缺陷的时候也会提到。现在微软也意识到了这个问题,因此它也开始在ajax领域奋起直追,比如说推出它自己的ajax框架atlas,并且在.NET2.0也提供了一个用来实现异步回调的接口,即ICallBack接口。那么微软为什么对自己在ajax方面的落后如此紧张呢?现在就让我们来分析一下ajax技术后面隐藏的深刻意义。 2、ajax技术的意义 我们在平时的开发中都多多少少的接触或者应用到了ajax,谈到ajax技术的意义,我们关注得最多的毫无疑问是提升用户的体验。但是,如果我们结合将来电脑和互联网的发展趋势,我们会发现ajax技术在某些方面正好代表了这种趋势。为什么这样说呢?我们知道,自从电脑出现以来,一直是桌面软件占据着绝对主导的地位,但是互联网的出现和成功使这一切开始发生着微妙的变化。相当一部分的人都相信,迟早有一天,数据和电脑软件将会从桌面转移到互联网。也就是说,将来的电脑有可能抛弃笨重的硬盘,而直接从互联网来获取数据和服务,我记得我念大学的时候,有位教授给我们上课的时候,曾经设想过这样一种情景,也许在将来的电脑桌面上,没有任何多余的软件和程序,而仅仅只有一个IE,虽然现在看起来我们距离这一天还很遥远,并且这其中还有很多的问题需要解决,但是我觉得这个并非梦想,而是迟早将实现的现实。那么,这其中的主要问题就是互联网的连接不稳定,谁也不愿意看着自己的电脑从服务器一点一滴的下载数据,那么,ajax是不是解决了这个问题呢,说实话,与其说ajax解决了这个问题,倒不如它只是掩盖了这个问题,它只是在服务器和客户端之间充当了一个缓冲器,让用户误以为服务没有中断。精确的说,ajax并不能提高从服务器端下载数据的速度,而只是使这个等待不那么令人沮丧。但是正是这一点就足以产生巨大的影响和震动,它实际上也对桌面软件产生了巨大的冲击。这一点我用一个例子来说明,我们可以比较一下Outlook Express和Gmail,前者是典型的桌面软件,后者是ajax所实现的B/S模式,实际上后者目前已经在慢慢取代前者了,Gmail在收发邮件的时候已经和Outlook Express的功能几乎没有差别了,而且它不需要安装客户端程序。这就是为什么微软对ajax所带来的冲击有着如此的恐惧心理,并且在它前不久所进行的调查之中,将google看做他们未来十年内的主要竞争对手的主要原因之一。当然,这种变化也并不会将桌面软件全部淘汰,现有的浏览器还没有一个能像PhotoShop等桌面程序那样处理复杂的图像。但是我们也不能忽视它带来的影响和冲击。

第3章 Ajax ToolKit 的使用

第3章Ajax ToolKit的使用 https://www.wendangku.net/doc/a5184836.html, AJAX 工具箱(Control Toolkit)是在微软的倡导下采用”开源”的方式,由各个“社区”(Communities)的开发人员或业余爱好者共同进行开发,并且用最快的速度发布,以便更广泛地发动群众参与,并吸取群众智慧。目前已经发布的比较成熟的成果四十多个,微软还将不断发布新成果(预计每两个月发布一次)。这些成果中有的是浏览器端控件,也有的是服务器端控件,有的是对原有控件功能的增强,也有的是独立的新控件。 3.1安装https://www.wendangku.net/doc/a5184836.html, AJAX Control Toolkit控件 为了使用https://www.wendangku.net/doc/a5184836.html, AJAX 的Ajax Control Toolkit控件,需要下载并安装相关控件,步骤如下: 1.下载并解压Toolkit控件 选择下列URL: https://www.wendangku.net/doc/a5184836.html,/releases/view/33804 下载,并将下载的文件解压到指定的目录中。 [注]:按照上面的url下载原来的版本(Original Ajax Control Toolkit).请注意,在这里不要下载https://www.wendangku.net/doc/a5184836.html, Library Beta 0911。因为这个版本只能适用于VS 2010版。 2.安装Toolkit控件 安装的步骤如下: 1)先创建一个网站,并打开一张网页; 2)右击工具箱,然后在工具箱中建立一个新标签(Add Tag),例如取名为“Ajax Control Toolkits”; 3)右击该标签,选用“选择项目”(Choose Items),并在打开的对话窗口右下方,通过“浏览按钮”(Browse),在前面解压的目录中用鼠标双击“AjaxControlToolkit.dll文件”,最后按“确定”按钮,此时在网站的工具箱中将自动增加40多个Toolkit控件。 下面摘要介绍几个常用的Toolkit控件的使用方法。需要时可以通过以下网站进一步学习其他控件的使用方法: https://www.wendangku.net/doc/a5184836.html,/ajaxtoolkit/ 3.2 设计Accordion:可折叠面板 Accordion是一个独立的控件. 它是英文"手风琴"的意思,代表这个控件能像手风琴那样折叠或展开.当一个列表中的项目很多,不便于阅读时,可以将列表项先归类到不同的面板中,并允许随时折叠或展开,阅读起来非常方便.网站中的"工具箱"中的控件本身就是用这种方式组织的. 3.2.1 Accordion的嵌套结构 使用Accordion的关键是,将文档正确地归类并组织成嵌套的结构. 1.控件的嵌套结构 假定给三个面板进行折叠或展开,其嵌套的代码如下:

AJAX

1、简介 AJAX:(Asynchronnous JavaScript And XML)异步的JavaScript与XML。 AJAX 不是新的编程语言,而是一种使用现有标准的新方法。 下面是Ajax 应用程序所用到的基本技术: ①HTML 用于建立Web 表单并确定应用程序其他部分使用的字段。 ②JavaScript 代码是运行Ajax 应用程序的核心代码,帮助改进与服务器应用程序的通信。 ③DHTML 或Dynamic HTML,用于动态更新表单。我们将使用div、span 和其他动态HTML 元素来标记HTML。 ④文档对象模型DOM 用于(通过JavaScript 代码)处理HTML 结构和(某些情况下)服务器返回的XML。 Ajax不是一种新技术,而是几种蓬勃发展的几种强大技术以新的方式组合而成,Ajax包括:基于XHTML和CSS标准的表示;使用Document Object Model进行动态的显示和交互;使用XML Request与服务器进行异步通讯;使用JavaScript绑定一切。 之前的是用户的请求直接向服务器提交。我们看一个计算的例子。 Ajax的工作原理,Ajax的核心是JavaScript和XMLHttpRequest。该对象在Internet Explorer5中首次引入,它是一种支持异步请求的技术。简单的说:XmlHttpRequest使你可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。在创建Web站点时,在客户端执行屏幕更新为用户提供了很大的灵活性能。下面是使用Ajax完成的功能:1、动态更新购物车的物品总数,无需用户单击Update并等待服务器发送整个页面。2、提升站点的性能,这是通过减少从服务器下载的数据量来实现的。例如:当更新购物车一个物品的数量时,会重新载入整个页面,这必须下载32K的数据,而使用Ajax计算新的总量,服务器只需要返回新的总量值,因此所需要的带宽仅仅为原来的百分之一。3、消除了用户每次输入时的页面刷新。例如,在Ajax中,如果用户在分页列表上单击Next,则服务器数据只刷新列表而不是整个页面。 用户的请求不再直接向服务器提交,而是使用XMLHttpRequest异步的向服务器发送,从而避免了重载页面。 特征: 异步发送请求 服务器响应的是数据不是页面内容。 2、XMLHttpRequest/ActiveXObject XMLHttpRequest对象,现代浏览器均支持XMLHttpRequest对象(IE5 和IE6 使用ActiveXObject)。 XMLHttpRequest用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。 XMLHttpRequest是整个Ajax技术的灵魂。Ajax异步发送请求,就是使用的XMLHttpRequest对象。 使用Ajax进行异步通信的过程: 创建XMLHttpRequest对象。 通过XMLHttpRequest对象向服务器发送请求。 创建回调函数,见识服务器响应状态,在服务器响应完成后,启动回调函数。 回调函数动态更新HTML页面。 创建XMLHttpRequest对象,所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及Opera)都支持创建XMLHttpRequest对象的语法: Varxhr=new XMLHttpRequest(); 为了应对所有的现代浏览器,包括IE5 和IE6,请检查浏览器是否支持XMLHttpRequest对象。如果支持,则创建XMLHttpRequest对象。如果不支持,则创建ActiveXObject: var xmlHttpRequest; function createXMLHttpRequest() { if(window.XMLHttpRequest) { //火狐谷歌 window.alert("支持XMLHttpRequest"); xmlHttpRequest = new XMLHttpRequest(); }else if (window.ActiveXObject) { //IE5 IE6 try{ xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP"); window.alert("不支持XMLHttpRequest,但是是Msxml2.XMLHTTP"); } catch (e) { try{ xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP"); window.alert("不支持XMLHttpRequest,但是是Microsoft.XMLHTTP"); } catch (e) { } } } } XMLHttpRequest对象的方法,属性和事件 方法: 1.open(method,url),

Ajax技术与传统Web应用的比较

中图分类号:TP393.01 文献标识码:B 文章编号:1009-2552(2010)01-0108-03 Ajax技术与传统Web应用的比较 孙启良 (济南大学理学院,济南250022) 摘 要:Ajax技术是浏览器与服务器交互方式的巨大改进,是Web2.0时代的重要标志。Ajax技术利用客户端闲置的处理能力,减轻了服务器和带宽的负担,使用户交互变得流畅而连续。介绍了Aja x的工作原理,基本特点以及与传统Web应用的区别,并给出了一个Ajax实例。 关键词:HTML;Ajax;JSP;JavaScript Comparison between Ajax technology and traditional Web applications SUN Qi liang (School of Science,Jinan University,Jinan250022,China) Abstract:Ajax technology is a tre mendous improvement of the browser and server.It is also an important indicator of Web2.0era.It uses the idle processing power of client to reduce the burden on servers and bandwidth,and then the user interaction has become smooth and continuous.This paper introduces the working principle of Aja x and the difference between traditional Web applications and Aja x.Finally,a section of the source code is given. Key w ords:HTML;Ajax;JSP;JavaScript 0 引言 Aja x即异步JavaScript和XML,是Web2.0中的一项关键技术,它允许把用户和Web页面间的交互与Web浏览器和服务器间的通信分离开来。 传统的Web应用允许用户填写表单(form),当提交表单时就向Web服务器发送一个请求。服务器接收并处理传来的表单,然后返回一个新的网页。这个做法浪费了许多带宽,因为在前后两个页面中的大部分HTML代码往往是相同的。由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。如果严重超过响应时间,服务器干脆告诉用户页面不可用。另外,某些时候,如果只是想改变页面一小部分的数据,那么如何不必重新加载整个责面,减少用户等待的时间是亟待解决的问题。现在,这个问题基本得到了解决,除了更优秀的程序设计、编码优化和调整服务器之外,还可以采用Ajax技术。1 Ajax的工作原理 与传统的Web应用不同,Ajax采用异步交互过程。Ajax在用户与服务器之间引入一个中间介质,消除了网络交互过程中的处理、等待等缺点。相当于在用户和服务器之间增加了一个中间层,使用户操作与服务器响应异步化。这样把以前的一些服务器负担的工作转移到客户端,利用客户端闲置的处理能力,减轻服务器和带宽的负担,从而达到节约ISP的空间及带宽租用成本的目的。 传统Web应用程序和Ajax程序工作原理如图1所示。 图1左侧图形为传统Web程序工作原理,此时服务器端承担大量的工作,客户端只有数据显示的功能。右侧图形为Ajax应用程序工作原理图,客户 收稿日期:2009-07-13 作者简介:孙启良(1980-),男,讲师,在职硕士研究生,主要研究方向为计算机网络和计算机体系结构。 108

Jauerymobile ajax跨域原理及案例

Jauerymobile ajax跨域原理及案例 一、$.getJSON()跨域之原理 /*可以跨域请求数据*/ 其原理是对 服务端:

3. { 4. $.getJSON( 5. "https://www.wendangku.net/doc/a5184836.html,/payment/payment/paytest?callback=?", 6. {id:1,name:"name"}, 7. function(jsondata){ 8. alert(jsondata.json); 9. }); 10. } 11. 12. 翻开jquery.的源码,一步步找: 13. 14. getJSON: function( url, data, callback ) { 15. return jQuery.get(url, data, callback, "json"); 16. } 17. 18. 再找JQuery.get 19. 20. get: function( url, data, callback, type ) { 21. // shift arguments if data argument was omited 22. 23. if ( jQuery.isFunction( data ) ) { 24. type = type || callback; 25. callback = data; 26. data = null; 27. } 28. 29. return jQuery.ajax({ 30. type: "GET", 31. url: url, 32. data: data, 33. success: callback, 34. dataType: type 35. }); 36. } 37.

ajax新手入门教程-适合初学者

初学者入门教程,来源于网络 AJAX 简介
AJAX 全称为“Asynchronous JavaScript and XML”(异步 JavaScript 和 XML) ,是一种创 建交互式网页应用的网页开发技术。类似于 DHTML 或 LAMP,AJAX 不是指一种单一的技 术,而是有机地利用了一系列相关的技术。 AJAX 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用 程序的技术。通过 AJAX,您的 JavaScript 可使用 JavaScript 的 XMLHttpRequest 对象来 直接与服务器进行通信。 通过这个对象, 您的 JavaScript 可在不重载页面的情况与 Web 服 务器交换数据。AJAX 在浏览器与 Web 服务器之间使用异步数据传输(HTTP 请求) ,这 样就可使网页从服务器请求少量的信息,而不是整个页面。AJAX 可使因特网应用程序更 小、更快,更友好。 AJAX 是一种独立于 Web 服务器软件的浏览器技术。AJAX 基于下列 Web 标准: ? ? ? ? JavaScript XML HTML CSS
在 AJAX 中使用的 Web 标准已被良好定义,并被所有的主流浏览器支持。AJAX 应用 程序独立于浏览器和平台。
1. AJAX 使用 Http 请求
在传统的 JavaScript 编程中,假如您希望从服务器上的文件或数据库中得到任何的信 息, 或者向服务器发送信息的话, 就必须利用一个 HTML 表单向服务器 GET 或 POST 数 据。而用户则需要单击“提交”按钮来发送/获取信息,等待服务器的响应,然后一张新的页 面会加载结果。由于每当用户提交输入后服务器都会返回一张新的页面,传统的 web 应用 程序变得运行缓慢,且越来越不友好。通过利用 AJAX,您的 JavaScript 会通过 JavaScript 的 XMLHttpRequest 对象,直接与服务器来通信。通过使用 HTTP 请求,web 页可向服务 器进行请求,并得到来自服务器的响应,而不加载页面。用户可以停留在同一个页面,他或 她不会注意到脚本在后台请求过页面,或向服务器发送过数据。 XMLHttpRequest 对象:通过使用 XMLHttpRequest 对象,web 开发者可以做到在页面 已加载后从服务器更新页面! 您的第一个 AJAX 应用程序:为了让您理解 AJAX 的工作原理,我们将创建一个小

面试分享|前端Ajax技术原理

面试分享|前端Ajax技术原理 1.什么是AJAX? AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术。它使用: 使用XHTML+CSS来标准化呈现; 使用XML和XSLT进行数据交换及相关操作; 使用XMLHttpRequest对象与Web服务器进行异步数据通信; 使用Javascript操作Document Object Model进行动态显示及交互; 使用JavaScript绑定和处理所有数据。 2.与传统的web应用比较 传统的Web应用交互由用户触发一个HTTP请求到服务器,服务器对其进行处理后再返回一个新的HTHL页到客户端, 每当服务器处理客户端提交的请求时,客户都只能空闲等待,并且哪怕只是一次很小的交互、只需从服务器端得到很简单的一个数据,都要返回一个完整的HTML页,而用户每次都要浪费时间和带宽去重新读取整个页面。这个做法浪费了许多带宽,由于每次应用的交互都需要向服务器发送请求,应用的响应时间就依赖于服务器的响应时间。这导致了用户界面的响应比本地应用慢得多。 与此不同,AJAX应用可以仅向服务器发送并取回必需的数据,它使用SOAP 或其它一些基于XML的Web Service接口,并在客户端采用JavaScript处理来自服务器的响应。因为在服务器和浏览器之间交换的数据大量减少,结果我们就能看到响应更快的应用。同时很多的处理工作可以在发出请求的客户端机器上完成,所以Web服务器的处理时间也减少了。 3.AJAX的工作原理 Ajax的工作原理相当于在用户和服务器之间加了—个中间层(AJAX引擎),使用户操作与服务器响应异步化。并不是所有的用户请求都提交给服务器,像—些数据验证和数据处理等都交给Ajax引擎自己来做, 只有确定需要从服务器读取新数据时再由Ajax引擎代为向服务器提交请求。 Ajax其核心有JavaScript、XMLHTTPRequest、DOM对象组成,通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据,然后用JavaScript来操作DOM而更新页面。这其中最关键的一步就是从服务器获得请求数据。让我们来了解这几个对象。 (1).XMLHTTPRequest对象 Ajax的一个最大的特点是无需刷新页面便可向服务器传输或读写数据(又称无

在线聊天手段在教学交互中的实现

在线聊天手段在教学交互中的实现 摘要:随着计算机与网络应用的普及使得人际交流更加方便快捷。由于传统教学方式在师生互动受教学时间、教学地点、教学方法等方面的限制,更注重课堂上的讲授,对于课余时间不能充分利用,一定程度上减少了教师与学生的交流互动,因此,必须寻求信息环境下新的交互手段(如手机通讯、网络)作为课堂教学的补充。可以说,在目前网络时代中,传统的知识传授过程已不再是唯一的教育过程,在信息环境中培养学生自主获取知识和运用知识能力的成为我们教育的一个主要目标。 本文通过开发“教学聊天室”,为网络教学交互提供一个支持平台。该系统以https://www.wendangku.net/doc/a5184836.html,与SQL Server 2000数据库作为开发工具,实现教学在线交互。借助网络互动平台作为传统教学的补充,可以摆脱传统交互方式的时间和地点限制,增进师生间沟通,使教学交互方式更多样,教学资源更丰富。 关键词:在线交互;聊天室系统;https://www.wendangku.net/doc/a5184836.html, The Realization of Online Chatting Means in Interactive Teaching Abstract:With popularization of computer and network application, the interpersonal communication becomes more convenient and fast. Since the restrictions of teaching time, the place of teaching and teaching methods in teacher-student interaction, the traditional teaching mode stresses more on classroom teaching, can not make full use of after-class time and reduces the teacher-student interaction at a certain extent. Therefore, a new interactive tool in information environment must to be seeked (such as mobile communications, networks) for the supplement of teaching in the class. It can be said that the traditional way of imparting knowledge is no longer the only educational process in the current era of network and developing students' ability to acquire and use knowledge in the information environment has become a major goal of our education. In this paper, through developing the "teaching Chatting Room", a supporting platform for network instruction interaction is provided. The system realizes the online teaching interaction by using https://www.wendangku.net/doc/a5184836.html, and SQL Server 2000.Thanks for the supplement of network interaction platform, the limit of time and place in the traditional teaching will be broken, the teacher-student interaction will be enhanced, the teaching interactive way will be diversified and the teaching resources will be enriched. Key words:Online interactive; Chatting room system; https://www.wendangku.net/doc/a5184836.html,

Ajax常见面试题

1. Ajax有四种技术组成:DOM,CSS,JavaScript,XmlHttpRequest中控制文档结构的是:() A DOM B CSS C javascript D XMLHttpRequest 参考答案:A 2. 在Ajax的四种技术中,控制通信的是哪一个() A DOM B CSS C javascript D XMLHttpRequest 参考答案:D 3. 在Ajax的四种技术中,JavaScript的主要作用是:() A 控制页面显示风格 B 控制文档结构 C 控制通信 D 控制其他的三个对象 参考答案:D 49.当XMLHttpRequest 对象的状态发生改变时调用yourCallback 函数,下列选项中正确的是()。 A.xmlHttpRequest. yourCallback = onreadystatechange; B.(yourCallback); C.(new function(){yourCallback }); D.= yourCallback; 50.关于XmlHttpRequest 对象的五种状态,下列说法正确的是()。 A.1表示新创建B.2表示初始化 C.3表示发送数据完毕D.4表示接收结果完毕 5. 在处理应答中,如果我们要以文本的方式处理,我们需要在参数表中放置XMLHttpRequest 对象的什么属性() A B C D 参考答案:A 6. 在处理应答中,如果我们要处理XML文档,我们需要在参数表中放置XMLHttpRequest 对象的什么属性() A B C D 参考答案:B

7. 在IE浏览器上创建XMLHttpRequest对象的方法是() A var a=new ActiveXObject(""); B var a=new XMLHttpRequest(); 参考答案:A 8. ==200表示什么 A 表示错误 B 表示找不到资源文件 C 表示成功 参考答案:C 9. ==404表示什么 A 表示错误 B 表示找不到资源文件 C 表示成功 参考答案:B 3. 以下哪个技术不是Ajax技术体系的组成部分 a. XMLHttpRequest b. DHTML c. CSS d. DOM 正确答案:b AJAX应用和传统Web应用有什么不同 在传统的Javascript编程中,如果想得到服务器端数据库或文件上的信息,或者发送客户端信息到服务器,需要建立一个HTML form然后GET或者POST数据到服务器端。用户需要点击”Submit”按钮来发送或者接受数据信息,然后等待服务器响应请求,页面重新加载。因为服务器每次都会返回一个新的页面,所以传统的web应用有可能很慢而且用户交互不友好。使用AJAX技术,就可以使Javascript通过XMLHttpRequest对象直接与服务器进行交互。通过HTTP Request,一个web页面可以发送一个请求到web服务器并且接受web服务器返回的信息(不用重新加载页面),展示给用户的还是通一个页面,用户感觉页面刷新,也看不到到Javascript后台进行的发送请求和接受响应。 介绍一下XMLHttpRequest对象 通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。AJAX 开始流行始于Google在2005年使用的”Google Suggest”。“Google Suggest”就是使用XMLHttpRequest对象来创建动态的Web接口:当用户开始输入google的搜索框,Javascript 发送用户输入的字符到服务器,然后服务器返回一个建议列表。XMLHttpRequest对象在+, Safari , Mozilla Firefox, Opera 8+ 和NetScapt7 开始被支持。

Jsp数据库二级联动原理利用AJAX访问servlet来完成

数据库二级联动构思:利用AJAX访问servlet来完成 * 第一、父级列表由页面初始完成 * 并加上onchange="javascript:getData(this.value)"事件 * 注意:getData(obj)为AJAX访问servlet函数,具体见代码jslib/linkage.js * 第二、在servlet中返回数据时,要求采用XML,如: Java代码 复制代码 1. 2.String id = request.getParameter("id"); 3. String str = ""; 4. str = str + ""; 5. String name = ""; 6. if (id.trim().equals("1")){ 7. name = "项目A"; 8. } else if (id.trim().equals("2")){ 9. name = "项目B"; 10. }else if (id.trim().equals("3")){ 11. name = "项目C"; 12. } 13. for (int i = 0; i < 10; i++) { 14. //数据可以从数据库中读取 15. str = str + ""; 16. } 17. str = str + ""; 18. out.println(str); 19.

相关文档