Ajax也用了很长时间了,今天只是想整理一下我心中的Ajax.
简单的说Ajax就是实现了异步向服务器请求数据,让用户有更好的体验.
XMLHttpRequest其实也就只有两种方式返回请求后的数据:
1.responseText方式,它是返回文本字串的方式,其实采用这种方式,通常是在服务端在对请求响应处理后,生成好要在浏览器上展示的html代码后,再直接输出到客户端,更新需要更新的客户端页面内容.这种方式的好处是能在服务端生成好客户端代码,可减轻客户端的负担,客户端只需将服务端生成的代码innerHTML到对应的区域就行了... ... 但它的缺点在于,输出到客户端的是文本数据,所以无法对得到的数据在客户端进行处理,所以就难以行成根据取回的数据的差异对页面进行必要的逻辑处理.
2.responseXML方式,它是返回XML格式的文本,它是在服务端在对请求响应处理后,将数据以XML格式的文本返回到客户浏览器上,然后再由客户端来完成方式1中由服务端来完成的生成页面展示的内容. 客户端将解析返回的XML数据,然后再进行页面的展示,由于是XML数据所以可以进行解析便可以根据解析出的数据对如何展示页面进行逻辑处理,在这一点上是比responseText要灵活的.但付出的是加大了客户端的负担.
其实现在我正在学习JSON,如果在responseText方式中返回JSON方式的数据的话,是完全可以让responseText和responseXML一样的灵活的,因为JSON也是一种数据结构,可以将要返回的数据组织在其中,到客户端再进行解析,解析也相当简单,只需evel执行即可... 但前提是输出到客户端的JSON数据结构是正确的,不然js就会bomb!
以上是仅是我个人的看法,有不对之处请大家多指点!