|
AJAX技术在RS10系统中的应用理想的用户界面是无形的,需要的时候,召之即来,所有想要的功能一应俱全;不需要的时候,挥之即去,用户可以不受干扰地继续专注于手头的问题。然而,这样的用户界面总是可遇而不可求,日复一日,用户只能顺从于那些未尽如人意的用户界面,并且慢慢习惯了那些低劣的应用。直到某一天,有人给我们展示了一种更好的方法,这时候我们才意识到,过去使用的方法是多么的落伍。 当今的因特网界也正在认识到,用于显示文档内容的基本web浏览器技术,已经无法胜任更高层面的要求了。越来越复杂的基于web的新型服务,不仅冲击着我们已经习惯了的传统web应用。其实有一大堆技术可以提供表现能力更加丰富、更加智能或者在其他方面更好的应用,但ajax却只需要使用一些在绝大多数现代电脑上既有的技术,就能举中若轻地完成同样的任务。无论是在技术还是从商业上ajax同样让人耳目一新。技术上,ajax极大的发据了web浏览器的潜力,开启了大量新的可能性。商业上,google,yahoo以及主要参与者通过眼花缭乱的ajax应用,让普通打造对于新一代的web应用充满了期待。 Ajax(Asynchronous javascript and XML), 即异步的javascript和xml,其基本技术包括:HTML 用于建立 Web 表单并确定应用程序其他部分使用的字段; JavaScript 代码是运行 Ajax 应用程序的核心代码,帮助改进与服务器应用程序的通信;DHTML 或 Dynamic HTML,用于动态更新表单;可以使用 div、span 和其他动态 HTML 元素来标记 HTML;文档对象模型 DOM 用于(通过 JavaScript 代码)处理 HTML 结构和(某些情况下)服务器返回的 XML。Ajax把 JavaScript 技术和 XMLHttpRequest 对象放在 Web 表单和服务器之间。当用户填写表单时,数据发送给一些 JavaScript 代码而不是直接发送给服务器。相反,JavaScript 代码捕获表单数据并向服务器发送请求。同时用户屏幕上的表单也不会闪烁、消失或延迟。换句话说,JavaScript 代码在幕后发送请求,用户甚至不知道请求的发出。更好的是,请求是异步发送的,就是说 JavaScript 代码(和用户)不用等待服务器的响应。因此用户可以继续输入数据、滚动屏幕和使用应用程序。然后,服务器将数据返回 JavaScript 代码(仍然在 Web 表单中),后者决定如何处理这些数据。它可以迅速更新表单数据,让人感觉应用程序是立即完成的,表单没有提交或刷新而用户得到了新数据。JavaScript 代码甚至可以对收到的数据执行某种计算,再发送另一个请求,完全不需要用户干预! 以前使用RS10产品的望远镜,需要点击按钮打开窗口以后,搜索到结果才能完成望远镜的选择。为了提高用户的体验和交互,在文本框中输入数据时,系统检索出匹配条件的数据记录并显示在输入框下方的信息提示框中。当光标移动到数据记录行时,双击鼠标或者按下回车键就可以选中望远镜,同时返填定义的字段数据。该功能类似与google suggest。当用户在页面上录入数据时,触发事件调用XMLHttpRequest对象将请求以异步的形式发送到服务器端,服务器段根据用户的请求,找到匹配查询条件的记录,将结果集以xml格式存储在输出流对象中,客户端获取输出流内容再解析显示在页面上。基本样式是如下图所示: 另外,当用户录入数据以后,在触发的事件就将录入值提交到服务器端,这样很频繁的交互会增加服务器端的压力,在我们设计开发时从时间和行为上控制提交的频率。在时间上,用户录入数据以后停滞0.5s自动提交到服务器端;在行为上,用户光标离开控件后提交到服务器端。与此同时,也考虑到针对不同用户的录入速度和习惯,设计不同的执行流程,如果用户录入较慢,则根据用户录入的条件检索与之相匹配的数据显示在提示框中,如果用户对数据录入较快,且数据库中存在和录入值相等的数据记录,就不需要将检索的数据显示在提示框而直接返填定义的属性,其流程图如下所示: 新望远镜的工作原理相当于在用户和服务器之间加了—个中间层,使用户操作与服务器响应异步化。这样把以前的一些服务器负担的工作转到客户端,利于客户端闲置的处理能力来处理,减轻服务器和带宽的负担,从而为企业节省成本和提高效率。
责编:张赛静
微信扫一扫实时了解行业动态
微信扫一扫分享本文给好友
著作权声明:kaiyun体育官方人口 文章著作权分属kaiyun体育官方人口 、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
|
最新专题
专家专栏
|
|