ajax post请求

1、发送的信息不在URL中,而是在xhr.send();里面,即:

xhr.send("username="+username+"&sex="+sex);

  并且要设置请求头,即:

xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");
php文件里面在接受的时候,要写成post方式,即:
  $username = $_POST["username"];

html:

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<form action="doGet.php" method="GET">
		<p>
			姓名:<input type="text" name="username" id="username">
		</p>
		<p>
			性别:
			    <input type="radio" name=
			    "sex" value="男" id="nan" checked/>男
			    <input type="radio" id="nv" name="sex" value="男" />女
		</p>
		<p>
			爱好:
			    <input type="checkbox" name="hobby" id="" value="足球">足球
			    <input type="checkbox" name="hobby" id="" value="篮球">篮球
			    <input type="checkbox" name="hobby" id="" value="羽毛球">羽毛球
		</p>
		<p>
			你的留言
			<textarea name="liuyan" rows="10" cols="30"></textarea>
		</p>
		<p>
			<input type="button" id="btn" value="点我提交">
		</p>
	</form>
	<div></div>
	<script type="text/javascript">
	    var btn = document.getElementById("btn");
        btn.onclick = function() {
        	var username = document.getElementById("username").value;
        	var sex = document.getElementById("nan").checked?"男":"女";
        	// 创建对象
        	var xhr = getXMLHTTPRequest();
           // 准备请求动作
              xhr.open("post","doPost.php",true);     
              //让AJAX 以提交表单的方式发起post的ajax请求
              xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");

           // 发送
              xhr.send("username="+username+"&sex="+sex);
           // 回调
              xhr.onreadystatechange = function() {
              	  //console.log("状态"+xhr.readyState);
              	  if(xhr.readyState == 4) {
              	  	    if(xhr.status == 200) {
              	  	    	 console.log(xhr.responseText); 
              	  	    }
              	  }
              }

        }
    
        function  getXMLHTTPRequest() {
              if(window.XMLHttpRequest) {
                   return new XMLHttpRequest();
              } else {
                  return new ActiveXObject("Microsoft.XMLHTTP");
              }
        }    
	</script>
</body>
</html>

php:

<?php
   // 得到姓名
    $username = $_POST["username"];
    // 得到sex
    $sex = $_POST["sex"];

    echo "已经收到".$username.$sex;

?>



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值