`
java虫
  • 浏览: 534869 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

(转自Ajax中国)Ajax并不神秘

阅读更多

看过此文章,觉得的确是讲的非常好,此种思路清晰,讲解透彻的文章不多,特此转载.

原文如下:

揭密各种AJAX控件和类库

  Ajax控件和类库现在真的太多了,不知不觉中增加了Ajax的神秘性和复杂性,看到版内很多人为此费解和伤神,决定发此贴谈谈本人对Ajax的观点,希望能让大家对Ajax有一个本质的认识。

   观点一:Ajax和服务器端技术毫不相关

       严格的说,与传统web开发相比,Ajax是完完全全的客户端技术。由于很多控件封装了客户端和服务器端的通信过程,因此很多问题也因通信而起。事实上,不论何种Ajax技术,服务器端都是返回的一个纯文本流,再由客户端来处理这个文本。这段文本可以是xml格式,也可以是一个Html片段,也可以是一段JavaScript脚本,或者仅是一个字符串。服务器端仅仅是作为一个数据接口,客户端使用XMLHttpRequest对象来请求这个页面,服务器端在页面内写入结果文本,这个过程和普通的web开发没有任何区别。所不同的只是,客户端在异步获取结果后,不是直接显示在页面,而是由客户端的Javascript脚本处理后再显示在页面。至于各种控件所谓的能返回DataSet对象,Date对象,或者其他的数据类型,都是封装了这个处理过程的结果。

  观点二:DOM模型是Ajax最本质的技术
      
  之所以没有把XMLHttpRequest列为最本质的技术,因为本人觉得它实在是太简单了,它只是可以让浏览器在后台请求一个页面,并将其内容交给JavaScript处理。真正的核心应该是:DOM模型,即文档对象模型。在DOM模型里,Html标记都被认为是一个对象,例如:div对象,table对象等等。DOM模型就规定了这些对象所具有的属性、方法和事件。通过这些性质,可以对一个已经显示于浏览器的页面进行内容的修改,例如增加节点、修改节点位置,删除节点等等。而不仅仅是一个innerHTML属性这么简单,虽然这是一个很有用的属性。
     
  观点三:在使用Ajax控件前理解它们的实现
      
  使用Ajax控件的确可以提高效率,但如果你空中楼阁般使用控件,那就得不偿失了。从一个控件换到另外一个控件又会有一个漫长的学习曲线。所以应该从底层了解其,况且Ajax实在不是什么高深的技术。其实任何东西的最底层其实都是简单的,但如果封装了这些底层的东西,事情会变得复杂和难以理解。以Asp.net为例,它的定制特性可以使得只要在方法前加上[ajax method]类似这样的标志就可以称为一个异步方法,相信这使得Asp.net的Ajax开发显得更加“高效”或者是“神秘”,而更多的事情则被封装了。同样记住一条,任何对服务器端的请求仅仅是返回纯文本,我们不一定要依赖于封装好的处理过程,而完全可以自己来实现。
 
  观点四:学好JavaScript
      
  在大多数人看来,JavaScript总不是那么一种正规的语言,随便copy一段就碰巧能运行,学过c之类的人,一看也能看懂,而且在浏览器中常常有脚本错误提示,所以潜意识觉得总不能付之以大任。事实上,要学好Ajax,这就完全是一种错误的看法。javascript作为一种脚本语言,其语法的确不是很严格,但并不妨碍其完成诸多复杂的任务,没有JavaScript,就没有Ajax。所以本人强烈建议,学Ajax前,一定要好好研究一番JavaScript,一般来讲,如果能顺利看懂prototype框架的代码(如:prototype-1.3.1.js),你的JavaScript水平就基本过关了。同时对DOM模型也可以算有一个基本的了解。
      
  观点五:Ajax点缀:CSS
      
  用JavaScript控制CSS其实很简单,基本上每个DOM对象都有一个style对象,只要把css属性里的"-"去掉,并让随后的字母变为大写就可以作为属性使用了,例如:element.style.backgroundColor="#f00";在css是:选择符 {background-color:#f00}
分享到:
评论

相关推荐

    自己用的简单封装AJAX类

    **标题解析:** "自己用的简单封装AJAX类" 指的是作者为了个人使用需求,编写了一个简化的AJAX处理类。...通过学习这个简单的AJAX类,开发者可以更好地理解AJAX的工作机制,并在实践中提高开发效率。

    jquery ajax Datatable与json之间数据转换

    jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换jquery ajax Datatable与json之间数据转换...

    AJAX AJAX AJAX AJAX AJAX AJAX AJAX AJAX AJAX

    AJAX AJAX AJAX AJAX AJAX AJAX AJAX AJAX AJAX

    AJAX原理 原理 AJAX

    遗憾的是,不知道出于什么想法,当时微软发明了AJAX的核心技术之后,并没有看到它的潜力而加以发展和推广,而是将它搁置起来。 AJAX技术的意义 我们在平时的开发中都多多少少的接触或者应用到了AJAX,谈到AJAX技术...

    ajax控件ajax控件ajax控件ajax控件

    ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件

    ajax特效ajax特效ajax特效

    ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效ajax特效

    ajax详解ajax详解ajax详解ajax详解ajax详解ajax详解ajax详解ajax详解ajax详解

    ajax详解ajax详解ajax详解 ajax详解ajax详解ajax详解 ajax详解ajax详解ajax详解 ajax详解ajax详解ajax详解

    ajax文档ajax文档

    AJAX 指异步 JavaScript 及 XML(Asynchronous JavaScript And XML)。  国 [使用ajax 构建应用程序] ...简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。

    jsp+ajax实现输入框自动搜索

    * 使用ajax技术发送请求到服务器,并显示服务器返回的结果 * 使用DOM操作显示服务器返回的结果,并形成下拉表 * 使用键盘选择下拉项的函数selItemByKey() 五、知识点总结: 1. 使用jsp和ajax技术实现输入框自动...

    ajax控件ajax控件

    ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件ajax控件...

    Ajax Ajax本质 Ajax本质源码

    Ajax,全称Asynchronous JavaScript and XML(异步JavaScript和XML),是现代网页开发中的核心技术,它使得网页可以在不重新加载整个页面的情况下与服务器交换数据并更新部分网页内容。这一技术的核心在于实现页面的...

    ajax代码 ajax代码

    2. **XMLHttpRequest对象**:是Ajax的核心,它允许JavaScript在不刷新整个页面的情况下与服务器进行通信。通过这个对象,我们可以发送HTTP请求并接收响应,实现数据的获取和更新。 3. **DOM(Document Object Model...

    基于ajax相册系统

    虽然名称中含有XML,但实际上Ajax并不局限于使用XML,也可以是JSON、HTML或者纯文本等。JSON(JavaScript Object Notation)因为其简洁和易于解析的特性,现在已成为Ajax交互中的首选数据格式。 ### 3. 异步与同步 ...

    ASP.NET AJAX程序设计——第I卷:服务器端ASP.NET 2.0 AJAX Extensions与ASP.NET AJAX Control Toolkit 源代码

    这部分内容不需要读者有任何的客户端开发知识,只要在Visual Stuio中轻松拖放即可实现强大的客户端Ajax功能,例如局部页面更新、异步回送、拖放、动画等,非常适合为现有的ASP.NET 2.0应用程序添加少量的Ajax特性,...

    AJAX实战AJAX实战

    AJAX实战AJAX实战AJAX实战AJAX实战AJAX实战AJAX实战AJAX实战AJAX实战

    深入浅出Ajax(Head Rush Ajax) 源码 书中代码

    "深入浅出Ajax"这本书通过丰富的实例和源码,旨在帮助读者理解Ajax的核心原理并学会在实际项目中应用。通过阅读和研究这些源码,不仅可以深化理论知识,还能提高实际编程能力,为成为精通Ajax的开发者打下坚实基础。

    asp版ajax用户注册 ajax 注册程序 asp版 ajax

    它们可能会接收前端通过AJAX发送的请求,进行相应的验证,并返回结果。 7. **index.html**:这是注册页面的HTML结构,包含了用户填写信息的表单和AJAX调用的相关脚本。HTML中的JavaScript代码会负责AJAX请求的发送...

    ajax自动刷新页面

    1. **异步通信**:Ajax的基础是异步通信,它允许浏览器在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容。这种通信方式通过XMLHttpRequest对象实现,它可以发送GET或POST请求到服务器,并接收返回...

    实例详解Android Webview拦截ajax请求

    Android Webview虽然提供了页面加载及资源请求的钩子,但是对于h5的ajax请求并没有提供干涉的接口,这意味着我们不能在webview中干涉javascript发起的http请求,而有时候我们确实需要能够截获ajax请求并实现一些功能...

    AjaxRequest(Ajax使用包)

    **AjaxRequest(Ajax使用包)** Ajax,全称Asynchronous JavaScript and XML(异步JavaScript和XML),是一种在无需重新加载整个网页的情况下,能够更新...了解并熟练运用AjaxRequest,对于构建现代Web应用至关重要。

Global site tag (gtag.js) - Google Analytics