原生和jQuery的ajax用法详解
发布时间 - 2026-01-10 22:44:31 点击率:次Ajax简介

Ajax被认为是(Asynchronous(异步) JavaScript And Xml的缩写)。现在,允许浏览器与服务器通信而无须刷新当前页面的技术都被叫做Ajax.
同步是指:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。
异步是指:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式 。
AJAX的缺陷
AJAX大量使用了JavaScript和AJAX引擎,而这个取决于浏览器的支持。IE5.0及以上、Mozilla1.0、NetScape7及以上版本才支持,Mozilla虽然也支持AJAX,但是提供XMLHttpRequest的方式不一样。所以,使用AJAX的程序必须测试针对各个浏览器的兼容性。
AJAX更新页面内容的时候并没有刷新整个页面,因此,网页的后退功能是失效的;有的用户还经常搞不清楚现在的数据是旧的还是已经更新过的。这个就需要在明显位置提醒用户“数据已更新”。
对流媒体的支持没有FLASH好。
一些手持设备(如手机、PDA等)现在还不能很好的支持Ajax。
form数据的序列化:
$('#submit').click(function(){
$('#form').serialize(); //会根据input里面的name,把数据序列化成字符串;eg:name=yang
$('#form').serializeArray(); //会根据input里面的name,把数据序列化成数组;eg:[object]
//注意:没有name会获取不到值
//下面两种不是jQuery的方法
JSON.parse() //json字符串转化为json对象
JSON.stringify() //json对象转化为json字符串
});
jQuery的ajax方法:
$.ajax({
url:'/comm/test1.php',
type:'POST', //GET
async:true, //或false,是否异步
data:{
name:'yang',age:25
},
timeout:5000, //超时时间
dataType:'json', //返回的数据格式:json/xml/html/script/jsonp/text
beforeSend:function(xhr){
console.log(xhr)
console.log('发送前')
},
success:function(data,textStatus,jqXHR){
console.log(data)
console.log(textStatus)
console.log(jqXHR)
},
error:function(xhr,textStatus){
console.log('错误')
console.log(xhr)
console.log(textStatus)
},
complete:function(){
console.log('结束')
}
})
原生的ajax方法:
$('#send').click(function(){
//请求的5个阶段,对应readyState的值
//0: 未初始化,send方法未调用;
//1: 正在发送请求,send方法已调用;
//2: 请求发送完毕,send方法执行完毕;
//3: 正在解析响应内容;
//4: 响应内容解析完毕;
var data = 'name=yang';
var xhr = new XMLHttpRequest(); //创建一个ajax对象
xhr.onreadystatechange = function(event){ //对ajax对象进行监听
if(xhr.readyState == 4){ //4表示解析完毕
if(xhr.status == 200){ //200为正常返回
console.log(xhr)
}
}
};
xhr.open('POST','url',true); //建立连接,参数一:发送方式,二:请求地址,三:是否异步,true为异步
xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded'); //可有可无
xhr.send(data); //发送
});
# jquery
# ajax用法
# 原生Ajax 和jQuery Ajax的区别示例分析
# 原生Aajax 和jQuery Ajax 写法个人总结
# 原生js jquery ajax请求以及jsonp的调用方法
# 原生js仿jquery实现对Ajax的封装
# 简单聊一聊原生Ajax与JQuery Ajax
# 是指
# 转化为
# 数据包
# 很好
# 两种
# 不清楚
# 下一
# 可有可无
# 还不能
# 下个
# 创建一个
# 才发
# 数据格式
# 使用了
# 而无须
# 序列化
# class
# pre
# JSON
# submit
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Android Socket接口实现即时通讯实例代码
javascript如何操作浏览器历史记录_怎样实现无刷新导航
如何确保FTP站点访问权限与数据传输安全?
如何安全更换建站之星模板并保留数据?
Python文本处理实践_日志清洗解析【指导】
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
Win11应用商店下载慢怎么办 Win11更改DNS提速下载【修复】
Laravel如何发送系统通知?(Notification渠道示例)
专业商城网站制作公司有哪些,pi商城官网是哪个?
今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】
jQuery 常见小例汇总
Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】
安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出
Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解
Laravel如何使用Collections进行数据处理?(实用方法示例)
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
Laravel如何使用Vite进行前端资源打包?(配置示例)
html5怎么画眼睛_HT5用Canvas或SVG画眼球瞳孔加JS控制动态【绘制】
制作公司内部网站有哪些,内网如何建网站?
Laravel Seeder填充数据教程_Laravel模型工厂Factory使用
Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权
Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】
java ZXing生成二维码及条码实例分享
如何在万网自助建站平台快速创建网站?
网页设计与网站制作内容,怎样注册网站?
如何用PHP工具快速搭建高效网站?
微博html5版本怎么弄发超话_超话进入入口及发帖格式要求【教程】
如何续费美橙建站之星域名及服务?
浅谈javascript alert和confirm的美化
Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】
如何有效防御Web建站篡改攻击?
猎豹浏览器开发者工具怎么打开 猎豹浏览器F12调试工具使用【前端必备】
如何选择可靠的免备案建站服务器?
Laravel如何配置任务调度?(Cron Job示例)
如何快速生成ASP一键建站模板并优化安全性?
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
Win11任务栏卡死怎么办 Windows11任务栏无反应解决方法【教程】
Laravel Admin后台管理框架推荐_Laravel快速开发后台工具
Android okhttputils现在进度显示实例代码
Laravel如何使用Gate和Policy进行授权?(权限控制)
Laravel distinct去重查询_Laravel Eloquent去重方法
Laravel怎么自定义错误页面_Laravel修改404和500页面模板
网站制作壁纸教程视频,电脑壁纸网站?
JavaScript实现Fly Bird小游戏
Laravel如何编写单元测试和功能测试?(PHPUnit示例)
如何获取PHP WAP自助建站系统源码?
Python文件操作最佳实践_稳定性说明【指导】
Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试

