在一般的 Web 应用程序中,用户填写表单字段并单击 Submit 按钮。然后整个表单发送到服务器,服务器将它转发给处理表单的脚本(通常是 PHP 或 Java,也可能是 CGI 进程或者类似的东西),脚本执行完成后再发送回全新的页面。该页面可能是带有已经填充某些数据的新表单的 HTML,也可能是确认页面,或者是具有根据原来表单中输入数据选择的某些选项的页面。当然,在服务器上的脚本或程序处理和返回新表单时用户必须等待。屏幕变成一片空白,等到服务器返回数据后再重新绘制。这就是交互性差的原因,用户得不到立即反馈,因此感觉不同于桌面应用程序。
Ajax 基本上就是把 JavaScript 技术和XMLHttpRequest对象放在 Web 表单和服务器之间。当用户填写表单时,数据发送给一些 JavaScript 代码而不是直接发送给服务器。相反,JavaScript 代码捕获表单数据并向服务器发送请求。同时用户屏幕上的表单也不会闪烁、消失或延迟。换句话说,JavaScript 代码在幕后发送请求,用户甚至不知道请求的发出。更好的是,请求是异步发送的,就是说 JavaScript 代码(和用户)不用等待服务器的响应。因此用户可以继续输入数据、滚动屏幕和使用应用程序。
然后,服务器将数据返回 JavaScript 代码(仍然在 Web 表单中),后者决定如何处理这些数据。它可以迅速更新表单数据,让人感觉应用程序是立即完成的,表单没有提交或刷新而用户得到了新数据。JavaScript 代码甚至可以对收到的数据执行某种计算,再发送另一个请求,完全不需要用户干预!这就是XMLHttpRequest的强大之处。它可以根据需要自行与服务器进行交互,用户甚至可以完全不知道幕后发生的一切。结果就是类似于桌面应用程序的动态、快速响应、高交互性的体验,但是背后又拥有互联网的全部强大力量。

转载于:https://www.cnblogs.com/vmusicworm/archive/2008/06/04/1213263.html

Ajax原理详细说明相关推荐

  1. Ajax原理,技术封装与完整示例代码

    在做项目和学习的时候,经常用到Ajax的相关技术,但是这方面的技术总是运用的不是十分好,就寻找相关博客来学习加深Ajax技术相关. 一.Ajax简介 二.同步.异步传输区别 2.1 异步传输 2.2 ...

  2. python爬虫原理-python爬虫原理详细讲解

    原标题:python爬虫原理详细讲解 一 .爬虫是什么 1.什么是互联网? 互联网是由网络设备(网线,路由器,交换机,防火墙等等)和一台台计算机连接而成,像一张网一样. 2.互联网建立的目的?互联网的 ...

  3. 浅析ajax原理与用法

    1 ajax原理 Ajax(Asynchronous JavaScript and XML (异步的JavaScript和XML)),是一种快速创建 动态网页的技术,目的是显示动态局部刷新.通过XML ...

  4. ajax原理及其优缺点

    什么是ajax? AJAX全称为"Asynchronous JavaScript and XML"(异步JavaScript和XML),是一种创建交互式网页应用的网页开发技术. a ...

  5. JPEG 原理详细实例分析及其在嵌入式 Linux 中的应用

    http://www.ibm.com/developerworks/cn/linux/l-cn-jpeg/index.html 一.系统架构 本文以一个实际的产品为例,来说明 JPEG 在其中的应用. ...

  6. Jquery中AJAX参数详细介绍

    转载:http://www.cnblogs.com/qiufuwu618/archive/2012/12/20/2826190.html Jquery中AJAX参数详细列表: 参数名 类型 描述 ur ...

  7. shell编程入门 linux解释器原理,Shell编程入门Linux解释器原理详细介绍 使用Shell进行工作的人们对.doc...

    Shell编程入门Linux解释器原理详细介绍 使用Shell进行工作的人们对 Shell编程入门:Linux解释器原理详细介绍使用Shell进行工作的人们对Unix/Linux下的Shell编程都很 ...

  8. ajax原理总结,Ajax原理

    [理论级]1.Ajax原理通过4个步骤来完成: a.创建一个xmlHttpRequest对象.(对象创建完毕后,我们需要判断浏览器的兼容问题(主要考虑是IE还是DOM对象)) b.服务器在发送消息时会 ...

  9. 【PHP学习】—利用ajax原理实现密码修改功能(九)

    [PHP学习]-利用ajax原理实现密码修改功能(九)

最新文章

  1. Spring Security 中最流行的权限管理模型!
  2. win10恢复经典开始菜单_小编教你电脑如何升级win10
  3. Could not generate DH keypair 解决方案
  4. 【以前的空间】树链剖分
  5. Ubuntu 18.04上进行HyperLedger Fabric 1.2.0环境及链码安装、部署和测试
  6. python控制电脑关机_Python利用智能音箱语音控制电脑开关机
  7. python接口开发django_用 Django 开发接口
  8. 2018-05-05(在小程序中使用图标)
  9. java 静态方法_80后程序员,教你学Java核心技术:用户自定义类+静态域静态方法
  10. 面试:Java分派机制
  11. java字符串截取指定下标位置的字符串
  12. 测试版降级后软件还在么,2分钟告诉你如何将iOS测试版降级到正式版本
  13. 三极管BJT特性曲线,原理
  14. 在matlab中讲矩阵一次性检验,层次分析法原理和matlab代码实现
  15. 梦三国2进去显示服务器未连接失败,梦三国手游无法登陆 无法登陆原因分析
  16. Word文档没保存电脑死机了,重启打开文档一片空白怎么办?
  17. 新一批交通强国试点工作启动
  18. bzoj2827千山鸟飞绝(Treap)
  19. Fremont弗里蒙特_US机房测速
  20. Vuex前端saas人力资源中台管理项目第四天 员工管理模块

热门文章

  1. php解析乱码字符串,PHP substr 截取字符串出现乱码问题解决方法[utf8与gb2312]
  2. sql增删改查_快速搞定数据库增删改查|附思维导图
  3. linux neo4j 服务器,如何在linux服务器上配置Neo4j · Digital World
  4. 数据挖掘讲座:我所知道的一点Data Mining
  5. BZOJ-3173-最长上升子序列
  6. 模型学习 - VAE(变分自编码)专题
  7. 运输pascal 90分程序
  8. AtCoder AGC030B Tree Burning
  9. 怎么用mysql存储系统数据库_mysql数据库之基本操作和存储引擎
  10. 调整亮度_【紫墨手机摄影课堂】图片调整