Ajax的用法总结
发布时间 - 2026-01-11 01:51:21 点击率:次一、什么是Ajax

Ajax英文全称为“ Asynchr JavsScript and XML”(异步的JavaScript和XML),是一种创建交互式网页的开发技术。
二、Ajax技术的核心
Ajax是一系列相关技术的融合,其核心包括XMLHttpRequest、JavsScript和DOM技术,数据格式的不同可能会用到Json或者XML的技术。
XMLHttpRequest是它的核心的内容,它能够为页面中的JavaScript脚本提供特定的通信方式,从而使页面的javascript脚本和服务器之间形成动态交互的效果,XMLHTTPRequest的最大的优点是页面内的javascript脚本可以不用刷新页面,而直接和服务器发生交互,从而实现页面无刷新的效果。
三、XMLHttpRequest方法属性描述
1、方法描述
abort()停止当前请求
getAllResponseHeaders()把HTTP请求的所有响应首部作为键/值对返回
getResponseHeader("header")返回指定首部的串值
open("method","URL",[asyncFlag],["userName"],["password"])建立对服务器的调用。method参数可以是GET、POST或PUT。
url参数可以是相对URL或绝对URL。这个方法还包括3个可选的参数,是否异步,用户名,密码
send(content)向服务器发送请求
setRequestHeader("header", "value")把指定首部设置为所提供的值。在设置任何首部之前必须先调用open()。
设置header并和请求一起发送 ('post'方法一定要 )
XMLHttpRequest 对象属性描述
2、方法描述
onreadystatechange状态改变的事件触发器,每个状态改变时都会触发这个事件处理器,通常会调用一个JavaScript函数
readyState请求的状态。有5个可取值:0 = 未初始化,1 = 正在加载,2 = 已加载,3 = 交互中,4 = 完成
responseText服务器的响应,返回数据的文本。
responseXML服务器的响应,返回数据的兼容DOM的XML文档对象 ,这个对象可以解析为一个DOM对象。
responseBody服务器返回的主题(非文本格式)
responseStream服务器返回的数据流
status服务器的HTTP状态码(如:404 = "文件末找到" 、200 ="成功" ,等等)
statusText服务器返回的状态文本信息 ,HTTP状态码的相应文本(OK或Not Found(未找到)等等)
四、Ajax工作原理原理
AJAX的工作原理相当于在用户和服务器之间加了一个中间层,使用户操作与服务器相应异步化。并不是所有的用户请求
都提交给服务器,像一些数据验证和数据处理等都交给AJAX引擎自己来做,只有确定需要从服务器读取新数据时再由
AJAX引擎代为向服务器提交请求。如图:
五、Ajax的优点
1、减轻服务器的负担,提升了网站的性能。
2、无刷新更新页面,减少了用户等待网站加载的时间。
3、用户体验更加友好,可以避免出现白屏的情况。
4、Ajax是基于标准化并且广泛使用的技术几乎所有的主流浏览器都支持该技术,ye不需要单独安装插件。
5、Ajax可以使Web中的页面和应用分离,便于分工合作。
六、Ajax缺点
1、对于移动设备不能很好的支持。
2、Ajax干掉了back按钮,即对浏览器后退机制的破坏。
3、安全问题。比如:跨站点脚步攻击、SQL注入攻击和基于credentials的安全漏洞等。
4、对搜索引擎的支持比较弱。
5、破坏了程序的异常机制。至少从目前看来,像ajax.dll,ajaxpro.dll这些ajax框架是会破坏程序的异常机制的。
造成调试的困难。
七、使用原则
1、Ajax适用场景
表单驱动的交互
深层次的树的导航
快速的用户与用户间的交流响应
类似投票、yes/no等无关痛痒的场景
对数据进行过滤和操纵相关数据的场景
普通的文本输入提示和自动完成的场景
2、Ajax不适用场景
部分简单的表单
搜索
基本的导航
替换大量的文本
对呈现的操纵
八、原生AJAX写法
var XHR=null;
if (window.XMLHttpRequest) {
// 非IE内核
XHR = new XMLHttpRequest();
} else if (window.ActiveXObject) {
// IE内核,这里早期IE的版本写法不同,具体可以查询下
XHR = new ActiveXObject("Microsoft.XMLHTTP");
} else {
XHR = null;
}
if(XHR){
XHR.open("GET", "ajaxServer.action");
XHR.onreadystatechange = function () {
// readyState值说明
// 0,初始化,XHR对象已经创建,还未执行open
// 1,载入,已经调用open方法,但是还没发送请求
// 2,载入完成,请求已经发送完成
// 3,交互,可以接收到部分数据
// status值说明
// 200:成功
// 404:没有发现文件、查询或URl
// 500:服务器产生内部错误
if (XHR.readyState == 4 && XHR.status == 200) {
// 这里可以对返回的内容做处理
// 一般会返回JSON或XML数据格式
console.log(XHR.responseText);
// 主动释放,JS本身也会回收的
XHR = null;
}
};
XHR.send();
}
以上所述是小编给大家介绍的Ajax的用法总结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# ajax
# 用法
# jQuery学习笔记之Ajax用法实例详解
# 谈谈jQuery Ajax用法详解
# 双层ajax嵌套(可多层)用法实例
# Jquery中$.post和$.ajax的用法小结
# jQuery中ajax的post()方法用法实例
# jQuery中ajax的get()方法用法实例
# jQuery中ajax的load()方法用法实例
# jQuery+ajax中getJSON() 用法实例
# 首部
# 表单
# 小编
# 工作原理
# 数据格式
# 加载
# 很好
# 是一种
# 还没
# 也会
# 中间层
# 分工合作
# 在此
# 不需要
# 无关痛痒
# 英文
# 给大家
# 掉了
# 还未
# 数据处理
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
EditPlus中的正则表达式实战(6)
微信推文制作网站有哪些,怎么做微信推文,急?
网站图片在线制作软件,怎么在图片上做链接?
laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法
Linux系统运维自动化项目教程_Ansible批量管理实战
如何快速搭建高效香港服务器网站?
Laravel如何优化应用性能?(缓存和优化命令)
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
UC浏览器如何设置启动页 UC浏览器启动页设置方法
Laravel如何创建自定义Artisan命令?(代码示例)
Linux网络带宽限制_tc配置实践解析【教程】
网站建设整体流程解析,建站其实很容易!
如何快速搭建高效简练网站?
如何在云主机上快速搭建网站?
原生JS获取元素集合的子元素宽度实例
标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
,在苏州找工作,上哪个网站比较好?
PHP正则匹配日期和时间(时间戳转换)的实例代码
如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南
Laravel怎么实现软删除SoftDeletes_Laravel模型回收站功能与数据恢复【步骤】
如何在云服务器上快速搭建个人网站?
Laravel Fortify是什么,和Jetstream有什么关系
详解ASP.NET 生成二维码实例(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
如何快速搭建高效WAP手机网站吸引移动用户?
如何在服务器上三步完成建站并提升流量?
如何快速上传自定义模板至建站之星?
如何为不同团队 ID 动态生成多个“认领值班”按钮
Laravel如何理解并使用服务容器(Service Container)_Laravel依赖注入与容器绑定说明
高配服务器限时抢购:企业级配置与回收服务一站式优惠方案
Android仿QQ列表左滑删除操作
如何续费美橙建站之星域名及服务?
Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践
浅谈Javascript中的Label语句
深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?
node.js报错:Cannot find module 'ejs'的解决办法
Laravel如何使用Passport实现OAuth2?(完整配置步骤)
如何撰写建站申请书?关键要点有哪些?
Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】
音乐网站服务器如何优化API响应速度?
Laravel怎么导出Excel文件_Laravel Excel插件使用教程
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
LinuxCD持续部署教程_自动发布与回滚机制
宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法
linux top下的 minerd 木马清除方法
Laravel项目怎么部署到Linux_Laravel Nginx配置详解
深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?
北京专业网站制作设计师招聘,北京白云观官方网站?

