本人想实现一个登陆无刷新的功能,但是我提交的表单为空,很烦恼。下面是我的代码
<form id="form1">
  <span id="showMes">
                                        <font color="#FFFFFF">&nbsp;用户名:<input id="userName" name="userName" runat="server" type="text" />
                                            密码:<input id="Pwd" type="password" name="Pwd" runat="server" />
                                            &nbsp;<input id="Login" type="Button" value="登陆" onclick="return CheckUserName()"  />
                                            <a href="../plgl/reguseradd.aspx?URL1=index.aspx" target="_blank" style="font-size: 14px;
                                                color: #ffffff">注册</a>&nbsp;
                                            <a href="../index.aspx" target="_blank" style="font-size: 14px; color: #ffffff">首页</a>
                                        </font>
                                        </span>
</form>--------------------------------------------------------------
// JScript 文件function CheckUserName(){
        var xmlhttp;
        try{
            xmlhttp = new ActiveXObject('Msxml2.XMLHTTP');
        }
        catch(e){
            try{
                xmlhttp = new ActiveXObject('Microsoft.XMLHTTP');
            }
            catch(e){
                try{
                    xmlhttp = new XMLHttpRequest();
                }
                catch(e)
                {}
            }
        }
        
        xmlhttp.onreadystatechange=function(){
            if(xmlhttp.readyState == 4){
                if(xmlhttp.status == 200){
                    var showMes = document.getElementById("showMes");
                
                       if(xmlhttp.responseText=="")
                       {
                             
                       }
                       else
                       {
                            showMes.innerHTML=xmlhttp.responseText;
                       }
               }
           }
            
       }
       
       xmlhttp.open("POST","../head_login.aspx",true);
      
        xmlhttp.send(null);
}
------------------------------------------------------
后台用Resposne.Form["userName"];为空,怎么办呢?

解决方案 »

  1.   

    httpcontext.Resposne.Form["userName"];试试
      

  2.   

    xmlhttp.open("POST","../head_login.aspx",true);===>
    xmlhttp.open("POST","../head_login.aspx","userName=abc",true);
      

  3.   

    你的js中好像没有获取用户姓名的文本框对象应该加上var userName = document.getElementById("userName");'../head_login.aspx?userName='+userName
    你试试行不行
      

  4.   

    唉 同学!你应该去看看ajax的基本原理了
    关于ajax的提交方式 Get Post 的区别
    Get 提交 xmlHttp.send(null)即可 
    Post 则需要设置头文件
    var pdata = "userid=001&username=wahaha";
    xmlHttp.setRequestHeader("Content-Length", pdata.length);
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    xmlHttp.send(pdata);//pdata 为提交的数据
      

  5.   

    用JQuery的Form插件吧 方便些~
      

  6.   

    后台用Resposne.Form["userName"];为空,怎么办呢?
    ---------------------------------------------
    var userName=document.getElementById('userName').value;
    xmlhttp.send("userName="+userName);
      

  7.   

    你根本就没传参数啊
    //Post方式
    xmlhttp.open("POST","../head_login.aspx",true);
    xmlhttp.send("userName" + document.getElementById('userName').value);//Get方式
    xmlhttp.open("POST","../head_login.aspx?userName=" + document.getElementById('userName').value,true);
    Resposne.QueryString["userName"]
      

  8.   

    那后台怎么获取传过来的pdata?
      

  9.   

    Request.Form["userName"];
    Request.Form["userid"];