Ajax -post 请求


<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>AJAX发送POST请求</title>
<style>
#loading {
display: none;
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-color: #555;
opacity: .5;
text-align: center;
line-height: 300px;
}

#loading::after {
content: '加载中...';
color : #fff;
}
</style>
</head>
<body>
<div id="loading"></div>
<table border="1">
<tr>
<td>用户名</td>
<td><input type="text" id="username"></td>
</tr>
<tr>
<td>密码</td>
<td><input type="password" id="password"></td>
</tr>
<tr>
<td></td>
<td><button id="btn">登录</button></td>
</tr>
</table>
<script>

// 找一个合适的时机,做一件合适的事情
var btn = document.getElementById('btn');
// 1. 获取界面上的元素 value
var txtUsername = document.getElementById('username');
var txtPassword = document.getElementById('password');
var loading = document.getElementById('loading');

btn.onclick = function () {
loading.style.display = 'block';
var username = txtUsername.value;
var password = txtPassword.value;
// 2. 通过 XHR 发送一个 POST 请求
var xhr = new XMLHttpRequest();
xhr.open('POST', 'login.php');
// !!! 一定注意 如果请求体是 urlencoded 格式 必须设置这个请求头 !!!
xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
// xhr.send('username=' + username + '&password=' + password)
xhr.send(`username=${username}&password=${password}`);
// 3. 根据服务端的反馈 作出界面提示
xhr.onreadystatechange = function () {
if (this.readyState !== 4) return;
console.log(this.responseText);
loading.style.display = 'none'
}
}

</script>
</body>
</html>

转载于:https://www.cnblogs.com/lujieting/p/10291259.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Ajax中的POST请求是一种向服务器发送数据的方式。与GET请求不同,POST请求将数据作为请求体的一部分发送给服务器,而不是通过URL参数传递。POST请求通常用于向服务器提交表单数据或其他需要传递大量数据的场景。 在底层实现上,使用JavaScript的XMLHttpRequest对象来创建一个Ajax请求。首先,通过open()方法指定请求的方式(POST)和URL地址。然后,设置Content-Type属性为'application/x-www-form-urlencoded',表示请求体中的数据是以查询字符串的形式进行编码。接下来,调用send()方法将数据作为请求体发送给服务器。最后,监听onreadystatechange事件,当请求状态为4且返回状态为200时,即请求成功,可以通过responseText属性获取服务器返回的数据。 在jQuery中,封装了更简便的方式来发送POST请求。可以使用$.ajax()方法,通过设置type属性为'POST',url属性为请求的URL地址,data属性为要发送的数据,dataType属性为预期的服务器响应的数据类型。同时,可以使用success回调函数来处理请求成功后的操作。 需要注意的是,POST请求通常不会被浏览器缓存,因为浏览器认为POST请求提交的内容很可能会有变化,所以每次都会向服务器发送请求,不使用缓存。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [Ajax-POST请求](https://blog.csdn.net/qq_43551801/article/details/120049212)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [ajax请求 POSTajax简介,ajax提交数据的多种类型](https://blog.csdn.net/wangwei490202517/article/details/128763803)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值