美文网首页
[转]JS原生Ajax代码示例

[转]JS原生Ajax代码示例

作者: ShanerChan | 来源:发表于2019-10-11 15:58 被阅读0次

文章来源:

JS原生Ajax和jQuery的Ajax与代码示例 -- 苏凯勇往直前

JS原生的Ajax其实就是围绕浏览器内内置的Ajax引擎对象进行学习的,要使用js原生的Ajax完成异步操作,有如下几个步骤:

1)创建Ajax引擎对象

2)为Ajax引擎对象绑定监听(监听服务器已将数据响应给引擎)

3)绑定提交地址

4)发送请求

5)接受响应数据

<body>

     <input type="button" value="异步请求服务器" onclick="fn1()">

     <span id="span1"></span>

</body>

function fn1() {

              //发送异步请求

              //1.创建ajax引擎对象----所有操作都是由ajax引擎完成

              if (window.XMLHttpRequest) {    // code for IE7+, Firefox, Chrome, Opera, Safari

                    xmlhttp = new XMLHttpRequest();

                } else {    // code for IE6, IE5

                    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

                }  

              //2.为引擎对象绑定监听事件

              xmlHttp.onreadystatechange = function() {

                     //当状态变化时处理的事情

                     if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {

                            //5.接收响应信息

                            var data = xmlHttp.responseText;

                            //alert(data);

                            document.getElementById("span1").innerHTML=data;

                     }

              }

              //3.绑定服务器地址

              //第一个参数:请求方式GET/POST

              //第二个参数:后台服务器地址

              //第三个参数:是否是异步 true--异步   false--同步

              xmlHttp.open("GET" ,  "${pageContext.request.contextPath}/ajaxServlet?username=zhangsan" , true);

              //4.发送请求

              xmlHttp.send();

       }

注意:接收响应信息应该在监听事件中完成,并且只有当readyState为4(即请求已处理完毕,响应已准备就绪),并且status为200(正常响应)时,方可处理响应信息。

注意:在JS原生Ajax中,也可以指定 如果是post提交

在发送请求之前设置一个头

xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");

function fn1() {

              //发送异步请求

              //1.创建ajax引擎对象----所有操作都是由ajax引擎完成

 if (window.XMLHttpRequest) {    // code for IE7+, Firefox, Chrome, Opera, Safari

                    xmlhttp = new XMLHttpRequest();

                } else {    // code for IE6, IE5

                    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");

                }  

              //2.为引擎对象绑定监听事件

              xmlHttp.onreadystatechange = function() {

                     //当状态变化时处理的事情

                     if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {

                            //5.接收响应信息

                            var data = xmlHttp.responseText;

                            //alert(data);

                            document.getElementById("span1").innerHTML=data;

                     }

              }

              //3.绑定服务器地址

              //第一个参数:请求方式GET/POST

              //第二个参数:后台服务器地址

              //第三个参数:是否是异步 true--异步   false--同步

              xmlHttp.open("POST" ,  "${pageContext.request.contextPath}/ajaxServlet" , true);

              //设置Content-type

              xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded"); 

              //4.发送请求

              xmlHttp.send("username=zhangsan" );

       }

相关文章

  • [转]JS原生Ajax代码示例

    文章来源: JS原生Ajax和jQuery的Ajax与代码示例 -- 苏凯勇往直前 JS原生的Ajax其实就是围绕...

  • JavaScript Ajax 实现

    Ajax.js 示例代码 index.json文件内容

  • Ajax Axios

    关于Ajax兼容性问题 前端原生Ajax(get方式),后端使用node.js 前后端代码: 前端原生Ajax(p...

  • 2019-04-06 AJAX

    请使用原生 JS 写出一个 AJAX 请求(代码中必须出现 XMLHttpRequest) AJAX AJAX:异...

  • 原生JS的Ajax请求

    废话不多说直接代码走起: //原生JS的ajax请求 var Ajax={ get: function(u...

  • 读取文件编码格式mime

    代码示例之原生js 代码示例之vue 插件安装 封装代码 应用封装代码 在线获取文件编码的地址:https://g...

  • 原生JS实现AJAX

    原生JS实现AJAX代码,代码如下 如果需要ajax运行方法完成后调用结果的话 需要使用回调函数 或者 promi...

  • ajax学习

    1、废话不多说,直接上代码演示:创建基本的ajax的get请求的原生js代码。 创建基本的ajax的post请求的...

  • 搜狗面试

    原型链上手写事件,手写原生js实现ajax事件,jsonp实现原理,阻止事件IE冒泡代码,事件捕获、处理,冒泡代码...

  • ajax跨域的方法

    一、传统的ajax方法 1、js代码 2、php代码 二、ajax jsonp 1、js代码 2、php代码 三、...

网友评论

      本文标题:[转]JS原生Ajax代码示例

      本文链接:https://www.haomeiwen.com/subject/dctxmctx.html