ajax (Ajax 开发)

百科:

  Ajax 即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术。

  Ajax = 异步 JavaScriptXML标准通用标记语言的子集)。

  Ajax 是一种用于创建快速动态网页的技术。

  Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。

  通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

  传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。

  Ajax 前景非常乐观,可以提高系统性能,优化用户界面。Ajax 现有直接框架 AjaxPro,可以引入 AjaxPro.2.dll 文件,可以直接在前台页面 JavaScript 调用后台页面的方法。但此框架与表单验证有冲突。另外微软也引入了 Ajax 组件,需要添加 AjaxControlToolkit.dll 文件,可以在控件列表中出现相关控件。

开发模式:

  

  许多重要的技术和 Ajax 开发模式可以从现有的知识中获取。例如,在一个发送请求到服务端的应用中,必须包含请求顺序、优先级、超时响应、错误处理及回调,其中许多元素已经在Web 服务中包含了。同时,随着技术的成熟还会有许多地方需要改进,特别是UI部分的易用性。

  Ajax 开发与传统的 B/S开发有很大的不同。这些不同引入了新的编程问题,最大的问题在于易用性。由于 Ajax 依赖浏览器的 JavaScript 和XML,浏览器的兼容性和支持的标准也变得和 JavaScript 的运行时性能一样重要了。这些问题中的大部分来源于浏览器、服务器和技术的组合,因此必须理解如何才能最好的使用这些技术。

  综合各种变化的技术和强耦合的客户服务端环境,Ajax 提出了一种新的开发方式。Ajax 开发人员必须理解传统的 MVC 架构,这限制了应用层次之间的边界。同时,开发人员还需要考虑 B/S 环境的外部和使用 Ajax 技术来重定型 MVC 边界。最重要的是,Ajax 开发人员必须禁止以页面集合的方式来考虑 Web 应用而需要将其认为是单个页面。一旦 UI 设计与服务架构之间的范围被严格区分开来后,开发人员就需要更新和变化的技术集合了。

优缺点:

 

  使用Ajax的最大优点,就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变的信息。

  Ajax不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。就像DHTML应用程序那样,Ajax应用程序必须在众多不同的浏览器和平台上经过严格的测试。随着Ajax的成熟,一些简化Ajax使用方法的程序库也相继问世。同样,也出现了另一种辅助程序设计的技术,为那些不支持JavaScript的用户提供替代功能。

  对应用Ajax最主要的批评就是,它可能破坏浏览器的后退与加入收藏书签功能。在动态更新页面的情况下,用户无法回到前一个页面状态,这是因为浏览器仅能记下历史记录中的静态页面。一个被完整读入的页面与一个已经被动态修改过的页面之间的可能差别非常微妙;用户通常都希望单击后退按钮,就能够取消他们的前一次操作,但是在Ajax应用程序中,却无法这样做。不过开发者已想出了种种办法来解决这个问题,HTML5之前的方法大多是在用户单击后退按钮访问历史记录时,通过创建或使用一个隐藏的IFRAME来重现页面上的变更。(例如,当用户在Google Maps中单击后退时,它在一个隐藏的IFRAME中进行搜索,然后将搜索结果反映到Ajax元素上,以便将应用程序状态恢复到当时的状态)。

  关于无法将状态加入收藏或书签的问题,HTML5之前的一种方式是使用URL片断标识符(通常被称为锚点,即URL中#后面的部分)来保持追踪,允许用户回到指定的某个应用程序状态。(许多浏览器允许JavaScript动态更新锚点,这使得Ajax应用程序能够在更新显示内容的同时更新锚点。)HTML5以后可以直接操作浏览历史,并以字符串形式存储网页状态,将网页加入网页收藏夹或书签时状态会被隐形地保留。上述两个方法也可以同时解决无法后退的问题。

  进行Ajax开发时,网络延迟——即用户发出请求到服务器发出响应之间的间隔——需要慎重考虑。如果不给予用户明确的回应,没有恰当的预读数据,或者对XMLHttpRequest的不恰当处理,都会使用户感到厌烦。通常的解决方案是,使用一个可视化的组件来告诉用户系统正在进行后台操作并且正在读取数据和内容。

原文地址:https://www.cnblogs.com/wo939566631/p/10043192.html

时间: 2024-11-14 12:58:03

ajax (Ajax 开发)的相关文章

JSP+Ajax网站开发小知识

一.JSP基础 1.<select  name="love"  size="3">其中的size属性指定了列表框显示选项的条数,如果所有选项多于这个数,将会出现滚动条. 2.addCookie(Cookie  cookie)方法将其放入客户端,获取Cookie对象可调用request对象的Cookie[]  getcookies()方法. Cookie   myCookie  =  new  Cookie("name",  "

JavaScript之Ajax-1 Ajax(Ajax原理、Ajax对象属性和方法)

一.Ajax原理 Ajax简介 - Asynchronous JavaScript And Xml 异步的 JavaScript 和 Xml - Ajax 是一种用来改善用户体验的技术,其实质是,使用XMLHttpRequest对象异步地向服务器发送请求 - 服务器返回部分数据,而不是一个完整的页面,以页面无刷新的效果更改页面中的局部内容 Ajax工作原理 获取Ajax对象 二.Ajax对象属性和方法 异步对象的属性和方法 onreadystatechange - onreadystatecha

JQuery AJAX $.ajax()方法

AJAX = Asynchronous JavaScript and XML. AJAX 是一种创建快速动态网页的技术. AJAX 通过在后台与服务器交换少量数据的方式,允许网页进行异步更新.这意味着有可能在不重载整个页面的情况下,对网页的一部分进行更新. JQuery脚本库里所提供的AJAX提交的方法有很多,但主要的方法有$.get(),$.post(),$.ajax().其中$.ajax()是前两种方法的底层实现,可以提供比前两者更多的属性与参数设置,如果需要高级的设置使用,建议使用$.aj

Web的Ajax应用开发模式(三)——Ajax的开发

Ajax是XMLHttpRequest对象和JavaScript.CSS.HTML.DOM等多种技术的结合. 此处重点强调XMLHttpRequest的以下特点,所以测试人员在测试到WEB的Ajax应用模式时要考虑使用多种浏览器,测试页面的兼容性问题: 1.它不是一个W3C标准,所以对于不同的浏览器有不同的初始化方法. 2.一般只考虑两种情况即可:IE浏览器&非IE浏览器(如FireFox,Safari,Opera). 在代码中的体现如下: if(window.XMLHttpRequest){

JSP+Ajax站点开发小知识

一.JSP基础 1.<select  name="love"  size="3">当中的size属性指定了列表框显示选项的条数.假设全部选项多于这个数.将会出现滚动栏. 2.addCookie(Cookie  cookie)方法将其放入client,获取Cookie对象可调用request对象的Cookie[]  getcookies()方法. Cookie   myCookie  =  new  Cookie("name",  &q

使用p5.ajax框架开发asp.net网页

p5.ajax是github开源项目"有效事件"设计模式 Phosphorus Five (作者:Thomas Hansen)中的一个核心组件,通过这个组件可以很方便的实现aspx页面和后台代码的交换,比mvc轻量.有效事件设计模式详见:https://msdn.microsoft.com/zh-cn/magazine/mt795187.aspx作者在文中写到:有效事件不应替代你的所有工作.我们的想法是在组件之间提供更好的接口.鉴于此,性能开销就不是主要问题.如果实际实现需要 5,00

后端用户名是否存在验证 | 鼠标失去焦点时显示基于ajax | Django开发

2.在用户名位置,鼠标离开失去焦点,使用ajax检测用户名是否存在,并显示 2.1 找到校验前端输入的js文件 function check_user_name(){ var len = $('#user_name').val().length; if(len<5||len>20) { $('#user_name').next().html('请输入5-20个字符的用户名') $('#user_name').next().show(); error_name = true; } else {

深究的东西 - AJAX高效开发

Get / Post 请求 Post发送数据分2次,一次header,一次body,所以post会快一些 XMLHttpRequest.getAllResponseHeaders() XMLHttpRequest.responseText XMLHttpRequest.setRequestHeader XMLHttpRequest.open() XMLHttpRequest.send 跨域请求: 动态脚步插入 Multipart XHR: 切分处理 http://techfoolery.com/

什么是AJAX? AJAX:”Asynchronous JavaScript and XML”中文意思:异步JavaScript和XML。

指一种创建交互式网页应用的网页开发技术. AJAX并非缩写词,而是由Jesse James Gaiiett创造的名词. 不是指一种单一的技术,而是有机地利用了一系列相关的技术: web标准( Standards-Based Presentation )XHTML+CSS的表示, 使用 DOM( Document Object Model )进行动态显示及交互, 使用 XML 和 XSLT 进行数据交换及相关操作, 使用 XMLHttpRequest 进行异步数据查询.检索. AJAX优点 lAj

jQuery-1.9.1源码分析系列(十六)ajax——ajax处理流程以及核心函数

先来看一看jQuery的ajax核心处理流程($.ajax) a. ajax( [url,] options )执行流程 第一步,为传递的参数做适配.url可以包含在options中 //传递的参数只是一个对象 if ( typeof url === "object" ) { options = url; url = undefined; } //options强制转成对象 options = options || {}; 第二步,创建一些变量,比较重要的是:创建最终选项对象s.全局事