位置: 编程技术 - 正文

javascript原生ajax写法分享(javascript原生写法)

编辑:rootadmin

推荐整理分享javascript原生ajax写法分享(javascript原生写法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascript原生函数的源代码,javascript原生写法,javascript原生方法,javascript原生短视频,javascript原生方法或属性,javascript原生方法或属性,javascript原生写入本地文件,javascript原生方法或属性,内容如对您有帮助,希望把文章链接给更多的朋友!

ajax:一种请求数据的方式,不需要刷新整个页面;ajax的技术核心是 XMLHttpRequest 对象;ajax 请求过程:创建 XMLHttpRequest 对象、连接服务器、发送请求、接收响应数据;

//测试

我们再来看一个示例

我们来看看原理

1、创建

1.1、IE7及其以上版本中支持原生的 XHR 对象,因此可以直接用: var oAjax = new XMLHttpRequest();

1.2、IE6及其之前的版本中,XHR对象是通过MSXML库中的一个ActiveX对象实现的。有的书中细化了IE中此类对象的三种不同版本,即MSXML2.XMLHttp、MSXML2.XMLHttp.3.0 和 MSXML2.XMLHttp.6.0;个人感觉太麻烦,可以直接使用下面的语句创建: var oAjax=new ActiveXObject('Microsoft.XMLHTTP');

2、连接和发送

2.1、open()函数的三个参数:请求方式、请求地址、是否异步请求(同步请求的情况极少,至今还没用到过);

javascript原生ajax写法分享(javascript原生写法)

2.2、GET 请求方式是通过URL参数将数据提交到服务器的,POST则是通过将数据作为 send 的参数提交到服务器;

2.3、POST 请求中,在发送数据之前,要设置表单提交的内容类型;

2.4、提交到服务器的参数必须经过 encodeURIComponent() 方法进行编码,实际上在参数列表”key=value”的形式中,key 和 value 都需要进行编码,因为会包含特殊字符。每次请求的时候都会在参数列表中拼入一个 “v=xx” 的字符串,这样是为了拒绝缓存,每次都直接请求到服务器上。

encodeURI() :用于整个 URI 的编码,不会对本身属于 URI 的特殊字符进行编码,如冒号、正斜杠、问号和井号;其对应的解码函数 decodeURI();encodeURIComponent() :用于对 URI 中的某一部分进行编码,会对它发现的任何非标准字符进行编码;其对应的解码函数 decodeURIComponent();

3、接收

3.1、接收到响应后,响应的数据会自动填充XHR对象,相关属性如下responseText:响应返回的主体内容,为字符串类型;responseXML:如果响应的内容类型是 "text/xml" 或 "application/xml",这个属性中将保存着相应的xml 数据,是 XML 对应的 document 类型;status:响应的HTTP状态码;statusText:HTTP状态的说明;

3.2、XHR对象的readyState属性表示请求/响应过程的当前活动阶段,这个属性的值如下0-未初始化,尚未调用open()方法;1-启动,调用了open()方法,未调用send()方法;2-发送,已经调用了send()方法,未接收到响应;3-接收,已经接收到部分响应数据;4-完成,已经接收到全部响应数据;

只要 readyState 的值变化,就会调用 readystatechange 事件,(其实为了逻辑上通顺,可以把readystatechange放到send之后,因为send时请求服务器,会进行网络通信,需要时间,在send之后指定readystatechange事件处理程序也是可以的,我一般都是这样用,但为了规范和跨浏览器兼容性,还是在open之前进行指定吧)。

3.3、在readystatechange事件中,先判断响应是否接收完成,然后判断服务器是否成功处理请求,xhr.status 是状态码,状态码以2开头的都是成功,表示从缓存中获取,上面的代码在每次请求的时候都加入了随机数,所以不会从缓存中取值,故该状态不需判断。

4、ajax请求是不能跨域的!

JavaScript实现图片自动加载的瀑布流效果 先给大家展示下效果图:向下滑动网页的时候能够自动加载图片并显示。盛放图片的盒子模型如下:divclass="box"divclass="box_img"imgsrc="Img/8.jpg"/div/div设置img-

详解JavaScript的另类写法 JavaScript是属于网络的脚本语言!JavaScript被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。JavaScript是因特网上最

javascript HTML5 Canvas实现圆盘抽奖功能 我们经常参加各种电商优惠活动,比如购买达到一定数额进行抽奖活动,在比如微信抽奖,淘宝抽奖,迅雷赚钱宝圆盘抽奖活动等。这些抽奖活动部分

标签: javascript原生写法

本文链接地址:https://www.jiuchutong.com/biancheng/373421.html 转载请保留说明!

上一篇:Javascript实现苹果悬浮虚拟按钮(js实现apply函数)

下一篇:JavaScript实现图片自动加载的瀑布流效果(js实现简单的画图功能)

  • 小规模纳税人每月不超过10万
  • 一般纳税人建筑工程税率是多少
  • 印花税购销合同包括哪些
  • 非税收入票据能报销吗
  • 高速公路通行费发票可以抵扣增值税吗
  • 企业要怎样才能发挥其在实现生态产品价值过程中的作用
  • 增值税晚交一个月会怎么样
  • 购进的固定资产多少金额可以直接进去费用
  • 费用类发票怎么做账
  • 投资者撤回投资额300000
  • 公司使用个人车辆费用是多少
  • 微信支付有优惠 系统异常
  • 季度所得税报表季初资产总额怎么填
  • 增值税专用发票怎么开
  • 公司注销资产负债表期末余额不能为0
  • 租房修缮费扣除
  • 购买原材料发生的采购费用计入
  • 旅游业差额征税怎么计算
  • 预付账款收不到发票怎么冲账
  • 促销购买
  • 出口货物专用发票图片
  • 即征即退和先征后退适用范围
  • 费用报销流程怎么走
  • PHP:oci_lob_copy()的用法_Oracle函数
  • 公司给客户报销费用可以吗
  • win7纯净版系统官网
  • 法国著名画家塞尚属于什么流派?
  • 基于thinkphp的学园招聘系统项目源代码
  • 计量差错引起的盘亏
  • 金融商品转让业务包括
  • 企业之间可以背书吗
  • 事业单位长期应付款怎么核销
  • php读取php文件内容
  • 研发支出的相关理论基础有哪些
  • 印花税申报完成如何缴纳
  • 出租固定资产的租金收入
  • 织梦图集的使用教程
  • Philtron: a PHP Proxy for HTTP
  • sql server自动生成行号
  • 可以抵扣的进项发票有哪些
  • 待处理流动资产损益是什么类科目
  • 预收账款可以用吗
  • 应付职工薪酬会计凭证
  • 未开票的收入如何申报增值税
  • 分期收款提供劳务 是什么
  • 工程建设项目融资方式有哪些
  • 企业所得税留抵税额
  • 营改增后租金收入交什么税
  • 为什么贷款要收手续费
  • 当月增加的固定资产当月不计提折旧
  • 研发成功后的产品出售如何处理
  • 健身中心开的服装店
  • 旅游业餐饮业
  • mysql中的null值和空
  • windows2000自动登陆
  • mac怎样解压缩
  • 在linux操作系统中
  • mac电脑文件夹怎么重命名
  • windows端口占用怎么关闭
  • windows10mobile官网
  • win8打游戏卡吗
  • 铁嘴大师
  • js咋用
  • 怎么用winrar打包压缩文件
  • cocos2dx-js
  • cocos2dx4.0教程
  • python中字符串类型和元组类型均不可变
  • nodejs调用c++函数
  • javascript学习指南
  • javascript怎么学
  • jquery自动点击按钮
  • android开源app
  • 关于怀孕在线咨询
  • jquery代码实例
  • 荆州市物业管理
  • 财政云操作视频
  • 安徽国家税务局增值税发票查询平台
  • 深圳电动车怎么注册登记
  • 深圳2021纳税
  • 湖北省税务局网站授权
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设