如何用jQuery编写的这个Ajax调用的完整性,完全用vanilla JavaScript
什么应该转换成香草javascript
$.ajax({
type: "DELETE",
url: "/users/delete/" + $(".deleteUser").data('id');
}}

我认为它应该是,但控制台日志给了我以下错误消息:请求未定义。而且我担心它不会拿起身份证。
request.open("DELETE", "/users/delete/" + this.dataSet('id'));

答案 0 :(得分:3)
你不能再获得更好的香草了xmlhttprequest。
var xhr1 = new XMLHttpRequest();
xhr1.open('DELETE', "http://127.0.0.1:80/users/delete/", true);
xhr1.onreadystatechange = function() {
if (this.status == 200 && this.readyState == 4) {
dostuff = this.responseText;
};//end onreadystate
xhr1.send();
享受。
答案 1 :(得分:1)
request
是节点模块,它在浏览器中不可用(虽然有一个浏览器的分支,但它不是vanilla JS,而是一个库)。
如果您不支持IE(只是IE,边缘应该没问题),您可以使用fetch
API:
fetch("/users/delete/" + $(".deleteUser").data('id'), {
method: "DELETE",
}}.then(function (response) {
console.log(response);
});
https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API
顺便说一下,我想你也想摆脱$.data
电话,这是vanilla JS版本:
var id = document.querySelector('.deleteUser').getAttribute('data-id');
答案 2 :(得分:0)
您可以简单地使用新的访存API:
fetch(URL,{method:'DELETE'})
.then((res)=>{
res.json()
window.location.href = '/'
}
);