原生Ajax(XMLHttpRequest)

一、什么是Ajax:

  • 全称Asynchronous JavaScript and XML;
  • 异步的 JavaScript 和 XML;
  • 可以在不重新加载整个页面的情况下(偷偷发数据),与服务器交换数据并更新部分网页内容;

二、Ajax之XMLHttpRequest:

1)五步使用法:

  1.创建XMLHTTPRequest对象

  2.使用open方法设置和服务器的交互信息

  3.设置发送的数据,开始和服务器端交互

  4.拿到数据后执行相关操作

这是GET请求:

HTML:
<a class="btn" onclick="AjaxSubmit2()">XMLHttpRequest点我</a>

<script>
        function AjaxSubmit2() {
            //第1步
            var xhr = new XMLHttpRequest();
            //第2步设置发送方法
            xhr.open(‘GET‘,‘/ajax1.html?p=123‘);
            //第3步设置发送数据
            xhr.send(null);
            //第4步,回调函数,拿到服务端数据后执行相关操作
            xhr.onreadystatechange = function () {
                if(xhr.readyState == 4){        {# 有0,1,2,3,4 四个数字都代表4个状态 #}
                    // 接收服务端的全部信息
                    console.log(xhr.responseText);
                }
            };
        }

</script>
POST请求:跟GET请求不一样的是需要加上请求头

HTML:
<a class="btn" onclick="AjaxSubmit4()">XMLHttpRequest点我</a>

<script>
function AjaxSubmit4() {
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function () {
            if(xhr.readyState == 4){
                console.log(xhr.responseText);
            }
    };
    xhr.open("POST","/ajax1.html");
    {#  POST请求需要携带请求头,Django才能解析出来  #}
    xhr.setRequestHeader(‘Content-Type‘,‘application/x-www-form-urlencoded; charset-UTF-8‘);
    xhr.send("q=456");
}
</script>

 

原文地址:https://www.cnblogs.com/ray-h/p/10202529.html

时间: 2024-08-04 12:48:48

原生Ajax(XMLHttpRequest)的相关文章

原生Ajax XMLHttpRequest对象

一.Ajax请求 - 现在常见的前后端分离项目中,一般都是服务器返回静态页面后浏览器加载完页面,运行script中的js代码,通过ajax向后端api发送异步请求获取数据,然后调用回调函数,将数据添加到页面上   1.1 JQuery封装后的ajax请求   - 注意:jQuery Ajax本质 XMLHttpRequest 或 ActiveXObject 1 jQuery.get(...) 2 所有参数: 3 url: 待载入页面的URL地址 4 data: 待发送 Key/value 参数.

实现jquery.ajax及原生的XMLHttpRequest调用WCF服务的方法

废话不多说,直接讲解实现步骤 一.首先我们需定义支持WEB HTTP方法调用的WCF服务契约及实现服务契约类(重点关注各attribute),代码如下: //IAddService.cs namespace WcfService1 { [ServiceContract] public interface IAddService { [OperationContract] [WebInvoke(Method="POST",RequestFormat=WebMessageFormat.Js

实现jquery.ajax及原生的XMLHttpRequest跨域调用WCF服务的方法

关于ajax跨域调用WCF服务的方法很多,经过我反复的代码测试,认为如下方法是最为简便的,当然也不能说别人的方法是错误的,下面就来上代码,WCF服务定义还是延用上次的,如: namespace WcfService1 { [ServiceContract] public interface IAddService { [OperationContract] [WebInvoke(Method="GET",RequestFormat=WebMessageFormat.Json, Resp

如何拦截或修改原生ajax请求

jQuery已经实现了各种 ajax 事件,如 beforeSend 等,但原生的 XMLHttpRequest 并没有这种事件.在没有用 jQuery的情况下,如果想修改 ajax 请求,得做一些特殊的处理.以下是我处理的方法: XMLHttpRequest.prototype._open = XMLHttpRequest.prototype.open; XMLHttpRequest.prototype.open = function(method, url, async) {     // 

jQuery_review之 原生Ajax的写法

最低层的ajax的实现是基于浏览器的一个标准,就是XMLHttpRequest对象,这种对象在MS浏览器上面的实现与其他浏览器上面的实现是不一样的.尽管现在非常多的第三方框架采用"模板模式"封装了如何获取XMLHttpRequest对象以及如何发送和处理中间出现的异常,但是还是非常有必要对ajax进行一次复习,这样才能在看其他的方法的时候温故而知新的效果. 编写原生的ajax的代码,需要需要采用的步骤是,首先,我们应当在function中定义一个XMLHttpRequest的变量对象,

JS原生Ajax请求

摘录一个JS原生Ajax请求行为,原文地址:http://caibaojian.com/ajax-jsonp.html ajax({ url: "./TestXHR.aspx", //请求地址 type: "POST", //请求方式 data: { name: "super", age: 20 }, //请求参数 dataType: "json", success: function (response, xml) { //

原生ajax基础知识笔记

原生ajax基础知识笔记 1.创建 XMLHttpRequest 对象 所有现代浏览器(IE7+.Firefox.Chrome.Safari 以及 Opera)均内建 XMLHttpRequest 对象. 老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveXObject. 代码示例: // Creates a XMLHttpRequest object. var xhr = new XMLHttpRequest(); 兼容浏览器代码示例: var xhr; /

JavaScript的原生Ajax解析

通过JavaScript的Ajax进行详细的解析过程,从而更好的了解Jquery的Ajax. 顺带,我会在后面把我整理的一整套CSS3,PHP,MYSQL的开发的笔记打包放到百度云,有需要可以直接去百度云下载,这样以后你们开发就可以直接翻笔记不用百度搜那么麻烦了.  笔记链接:http://pan.baidu.com/s/1qYdQdKK 密码:pvj2   一.JavaScript原生ajax1.原生ajax代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

原生Ajax 和Jq Ajax

前言:这次介绍的是利用ajax与后台进行数据交换的小例子,所以demo必须通过服务器来打开.服务器环境非常好搭建,从网上下载wamp或xampp,一步步安装就ok,然后再把写好的页面放在服务器中指定的位置.打开时,在浏览器地址栏输入"localhost/指定页面"或者"127.0.0.1/指定页面"打开. 下面列出demo的HTML.PHP.原生ajax .jq ajax代码. HTML代码: <!doctype html> <html> &

原生Ajax实现异步通信

昨天我们用JQuery.Ajax讲解了JQuery如何通过Ajax实现异步通信,为了更好的编织知识网,今天我们用一个Demo演示如何用javascript实现原生Ajax的异步通信. 原生Ajax实现异步通信分为以下5步: 1.创建XMLHttpRequest对象: 2.注册回调方法: 3.设置和服务器端交互的参数 4.设置向服务器端发送的数据,启动和服务器端的交互: 5.写回调方法 有了这5步的思想指导,下面我们开始设计实现过程. 首先我们新建一个html页面,用于和用户交互,代码如下: <!