AJAX的POST提交数据方法

AJAX的POST提交数据方法

AJAX中POST使用?

在AJAX里,用POST提交数据是通过SEND的参数来传的。
<script type="text/javascript" language="javascript">
<!--
//创建xmlhttp函数
function CreateHTTPObject()
{
    var xmlhttp;
    try
    {
        xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch (e)
    {
        try
        {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch (e)
        {
            xmlhttp = false;
        }
    }
    if (!xmlhttp && typeof XMLHttpRequest!='undefined')
    {
        try
        {
            xmlhttp = new XMLHttpRequest();
        }
        catch (e)
        {
            xmlhttp=false;
        }
    }
    if (!xmlhttp && window.createRequest)
    {
        try
        {
            xmlhttp = window.createRequest();
        }
        catch (e)
        {
            xmlhttp=false;
        }
    }
    return xmlhttp;
}
//使用全局变量 xmlhttp
function OnReadyStateChng()
{
    if (xmlhttp.readyState == 0)
    {
        document.getElementById("board").innerHTML = "尚未初始化";
    }
    else if (xmlhttp.readyState == 1)
    {
        document.getElementById("board").innerHTML = "正在加载";
    }
    else if (xmlhttp.readyState == 2)
    {
        document.getElementById("board").innerHTML = "加载完毕";
    }
    else if (xmlhttp.readyState == 3)
    {
        document.getElementById("board").innerHTML = "正在处理";
    }
    else if (xmlhttp.readyState == 4)
    {
        document.getElementById("board").innerHTML = xmlhttp.responseText; //处理完毕
    }
}
//这里正式开始
var xmlhttp = CreateHTTPObject();
if (xmlhttp)
{
    xmlhttp.open("POST", "request.asp", true);
    xmlhttp.onreadystatechange = OnReadyStateChng;
    xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); //这一句是用post方法发送的时候必须写的
    xmlhttp.send("a="+encodeURIComponent("中国人"));
}
-->
</script>
好了,就是这样,用POST时,很多人掉了xmlhttp.setRequestHeader这句,所以常出错?










var postStr = "name="+ userName +"&age="+ userAge +"&sex="+ userSex;
//实例化Ajax
varajax= null;
if(window.XMLHttpRequest){
ajax= new XMLHttpRequest();
}
else if(window.ActiveXObject){
ajax= new ActiveXObject("Microsoft.XMLHTTP");
}
else{
return;
}
//通过Post方式打开连接
ajax.open("POST", url, true);
//定义传输的文件HTTP头信息
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
//发送POST数据
ajax.send(postStr);
//返回数据的处理函数
ajax.onreadystatechange = function(){
if (ajax.readyState == 4 &&ajax.status == 200){
msg.innerHTML =ajax.responseText;
}
}
}
</SCRIPT>
<form name="user_info">
姓名:<input type="text" name="user_name" /><br/>
年龄:<input type="text" name="user_age" /><br/>
性别:<input type="text" name="user_sex" /><br/>
<input type="button" value="提交表单" onClick="saveUserInfo()">
</form>
//构建一个接受返回信息的层:
<div id="msg"></div>


以下是改好的代码:
<!DOCTYPE html PUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org /TR/xhtml1/DTD/xhtml1- transitional.dtd">
<html xmlns=" http://www.w3.org /1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
function ajaxLoad(){
var xmlHttp=false;
if(window.XMLHttpRequest){
xmlHttp=new XMLHttpRequest();
xmlHttp.overrideMimeType("application/x-www-form-urlencoded");
}
if(window.ActiveXObject){
try{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}catch(e){
try{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}catch(e){
alert("您的浏览器不支持AJAX");
}
}
if(xmlHttp){
xmlHttp.open("POST","ajax.asp");
xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttp.onreadystatechange=function(){
if(xmlHttp.readyState==4&&xmlHttp.status==200){
document.getElementById("block").innerHTML=xmlHttp.responseText;
}
}
xmlHttp.send("username=dashu");
}
}
}
</script>
</head>
<body>
<span id="block"></span>
<a οnclick="ajaxLoad();">Click</a>
</body>
</html>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值