位置: 编程技术 - 正文

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实现简单的画图功能)

  • 用友取消操作在哪里
  • 发票第一联需要保存多久
  • 增值税扣费
  • 简易计税的进项可以抵扣吗
  • 出口税增加
  • 如何认定纳税人资格证书
  • 变更税务登记证需要提供哪些材料
  • 个人住房契税2021年收费标准
  • 票据结算的分录怎么做
  • 发放股票股利的账务处理
  • 房地产企业城建税预缴可以抵扣吗
  • 来料加工账务处理办法
  • 货物丢失计入什么费用
  • 资产负债表年初余额是不是一直不变
  • 餐饮企业卖套餐赠送单品要交增值税吗?
  • 土地租赁合同交不交印花税
  • 企业如何申请定增资金
  • 计提个人生产经营所得个税需要贴附件吗
  • 商誉在报表中如何填列
  • 企业所得税可以弥补几年亏损
  • 固定资产产权转移
  • 企业购入存货分录
  • 如何固定iPhone墙纸
  • linux mint 20.1安装
  • 增值税中进项税额比对异常能作废申报吗
  • PHP:sys_getloadavg()的用法_misc函数
  • 补缴社保会被税务稽查吗
  • php数组函数有哪些
  • 工人工资怎么算
  • 融资租赁会计处理小企业会计准则
  • 企业所得税的征税范围是什么
  • 汇算清缴补交的所得税怎么记帐
  • php模板引擎语法
  • PHP array_key_exists检查键名或索引是否存在于数组中的实现方法
  • WINDOWS10系统怎样给电脑分区
  • 个体经营所得税申报表a
  • idea可以编写vue吗
  • idea 创建maven项目读取pom报错
  • php分类
  • php解析xml文件
  • create命令属于什么语句
  • 单据已经生成凭证,不允许自动删除
  • 收据能抵成本吗
  • 门窗安装属于土建还是安装?
  • 金税盘开票系统复核人员设置在哪里
  • python frames
  • sql server go语句
  • 企业的利润率怎么算
  • 材料采购账务处理思维图怎么做
  • 应纳税所得额计入什么科目
  • sql server 2008 r2数据库备份
  • SQL2005Express中导入ACCESS数据库的两种方法
  • 城建税免征怎么记账
  • 经济作物评估标准
  • 企业所得税汇算清缴时间
  • 车辆购置税滞纳金上限
  • 个人开发者要缴税吗
  • 费用报销单一张写不完怎样转下一张?
  • 购买原材料无法准确划分用途的进项税额怎么抵扣
  • 应纳税工资是应发还是实发
  • 收到保险公司保险费会计分录
  • 发票监制章是什么章图片
  • mysql常见优化手段
  • sqlserver 获取字符位置
  • windows自带的
  • mac系统怎么设置字体大小
  • win8.1技巧
  • win10系统的电脑
  • iphone一直让登陆icloud
  • 随机色彩
  • linux版本控制软件
  • shell脚本循环复制文件
  • 一张监控
  • CloudEditText
  • javascript数组的本质
  • 四川税务局发票下载
  • 专用发票如何导出
  • 大连个体营业执照怎么办
  • 上海个体工商户怎么报税
  • 广西纳税申报流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设