位置: 编程技术 - 正文

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

  • 免税农产品发票怎么做账
  • 收款和出库哪个借方哪个贷方?
  • 兼职劳务税率是多少2020
  • 物业公司外包保安死亡
  • 一般纳税人工会经费返还政策
  • 加计抵扣进项税额会计分录
  • 残保金在职职工人数临时工算吗
  • 总公司向子公司收取管理费如何纳税
  • 网上平台服务年费应该计入什么费用?
  • 企业购买房产可以抵扣增值税吗
  • 私人转公账可以开发票吗
  • 医院开发票需要税号吗
  • 核定征收金额如何确定
  • 企业购置房产折旧
  • 建筑服务安装费会计分录
  • 办理股权转让麻烦吗
  • windows 10如何清除联网记录
  • 工会经费缴纳比例是哪里规定的
  • 电脑图标怎么在下面显示
  • 如何解决windows7无法开机
  • 如何设置电源键关闭屏幕
  • 业务招待费进项税额转出表二
  • 农产品的进项税额转出公式
  • 贷款房屋评估费怎么收
  • 确定无形资产使用寿命时应当考虑的因素有
  • 企业发行股票的溢价收入应计入
  • 如何找装修公司
  • 没有实际出资的股东怎么退出
  • nicconfigsvc.exe - nicconfigsvc是什么进程 有什么用
  • Kamikōchi, Nagano Prefecture, Japan (© sadao/Shutterstock)
  • 公民什么情况纳税
  • yolov5参数设置
  • mysql_escape_string()函数用法分析
  • php示例代码
  • 私募股权基金公司是做什么的
  • 企业所得税申报表在哪里打印
  • php算法有哪些
  • 电子承兑汇票的承兑人是谁
  • 收到金融服务费发票会计分录怎么写
  • 短期借款的账务处理例题
  • 合伙企业费用汇总表
  • 在建工程领用物资时是用成本价还是市场价
  • 无息的银行承兑汇票
  • 生产成本要如何核算
  • 收到承兑汇票如何写收据
  • 零工发生事故算工伤吗
  • 建设项目财务费用包括哪些
  • 记账凭证如何填写样本
  • 办税人员可以是开票员吗
  • 会计的几种折旧类型
  • 资产处置收益和资产减值损失区别
  • mysql登陆error2002
  • mysql5.5忘记密码
  • 安装 apt
  • centos7搭建nfs详细步骤
  • 跳线短路
  • centos inode
  • gacrunner.exe是什么
  • win8怎么打开cmd命令窗口?
  • windows 10 升级
  • windows8无法安装wps
  • window10英文版下载
  • win10教育版登录
  • bootstrap轮播插件
  • js中script标签的作用
  • bat批处理脚本教程
  • HTML <!DOCTYPE> 标签
  • opengl光线跟踪代码
  • js class属性
  • Node.js中的全局对象有
  • unity资源包怎么用
  • unity的ugui
  • pyinstaller指定python2
  • jquery 延迟对象
  • jqueryif判断
  • python3 random模块
  • json遍历对象集合
  • 二手车公司如何运营
  • 福建地方税务局招聘
  • 游艇车船税怎么收
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设