`
java虫
  • 浏览: 536044 次
  • 性别: 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中文手册 API

    很不错的Ajax开发草考文档,方便快捷1. AJAX介绍AJAX是一种运用JavaScript和可扩展标记语言(XML),在网络浏览器和服务器之间传送或接受数据的技术。2. AJAX实例AJAX可以用来创建更多交互式的网络应用程序。3. AJAX源...

    AJAX原理 原理 AJAX

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

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

    * 使用ajax技术发送请求到服务器,并显示服务器返回的结果 * 使用DOM操作显示服务器返回的结果,并形成下拉表 * 使用键盘选择下拉项的函数selItemByKey() 五、知识点总结: 1. 使用jsp和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(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应用至关重要。

    ajax教程

    虽然名字中有XML,但Ajax并不局限于XML。实际上,它也可以处理JSON、HTML、文本等多种数据格式。JSON因为其简洁和易于解析,现在已成为Ajax传输数据的首选格式。 **4. 应用场景** Ajax广泛应用于各种Web应用,如: ...

    Ajax请求发送成功但不进success的解决方法

    1.情况描述:ajax发送成功,后台也成功响应请求,并返回了json数据,通过chrome监听请求也可以看到响应的json数据,但是就是不进success方法,反而跑到error方法中了 前端: $.ajax({ type : get, data : {'dbId'...

    Java Ajax分页,jsp ajax分页

    AJAX允许在后台与服务器交换数据并更新部分网页内容,而无需重新加载整个页面。这通过创建XMLHttpRequest对象实现,它可以在后台与服务器进行异步通信。在Java环境下,我们通常使用jQuery库来简化AJAX操作,因为它...

    Ajax自动匹配搜索

    利用vs 2010+sql server05+ajax功能实现搜索自动匹配 正在学习ajax的初学者或者菜鸟可以看看,了解一下ajax功能,体会一下ajax的流程和它的简单易用性,本人也是菜鸟大神高手就不用看了

    jquery+ajax例子

    Ajax(Asynchronous JavaScript and XML)则是一种在不刷新整个页面的情况下与服务器交换数据并更新部分网页的技术。在这里,我们将深入探讨基于jQuery的Ajax应用,以"jQuery+Ajax例子"为标题,结合项目描述和标签,...

Global site tag (gtag.js) - Google Analytics