这个jquery.ajax调用的简单JavaScript等价物是什么?

pen*_*ake 0 javascript ajax jquery xmlhttprequest

如何在不使用jQuery但仅使用纯JavaScript的情况下重写下面的jQuery.Ajax调用?

谢谢!

$.ajax({
    type: 'POST',
    url: url,
    contentType: 'application/json',
    data: JSON.stringify(request),
    success: function (result) {
        alert("Submitted succesfully!");
    },
    error: function (jqXHR, textStatus, errorThrown) {

        alert('Error Occured' + errorThrown);
    }
});
Run Code Online (Sandbox Code Playgroud)

Ste*_*nno 6

如果你真的想要确切了解jQuery中的ajax函数是什么,打开jquery源并查看ajax函数,这里是源代码的链接.

http://code.jquery.com/jquery-1.9.1.js
Run Code Online (Sandbox Code Playgroud)

如果你想在没有jQuery的情况下这样做,你必须创建一个Xml Http请求

http://www.w3.org/TR/XMLHttpRequest/

这基本上就是AJAX(异步javascript和xml).

这是一个例子:

var xmlhttp;

if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
}

else{ // code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}

xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();

xmlDoc=xmlhttp.responseXML;
Run Code Online (Sandbox Code Playgroud)

这将创建一个xmlhttp对象,并将其与GET一起发送到指定的url,在本例中为txt文件,并询问它的内容.数据以xml格式返回,我们将其保存到xmlDoc.现在,您可以随意使用数据.

我希望这有帮助!

  • 没错,但我不确定这是OP正在寻找的信息,尽管他们可能会澄清. (4认同)
  • 听起来好像他们只是想执行AJAX调用,他们对jQuery将在内部执行的所有额外处理选项等都不感兴趣. (3认同)