function doRequestUsingPOST() {
    createXMLHttpRequest();    
    var url = "dogp.aspx?timeStamp=" + new Date().getTime();
    var queryString = createQueryString();    
    xmlHttp.open("POST", url, true);
    xmlHttp.onreadystatechange = handleStateChange;
    xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");    
    xmlHttp.send(queryString);
}
服务器端:
string firstname = this.Request.QueryString["FirstName"];
        string middlename = this.Request.QueryString["MiddleName"];
        string birthday = this.Request.QueryString["Birthday"];        
        StringBuilder sb = new StringBuilder();
        sb.Append("Hello ").Append(firstname).Append(" ").Append(middlename);
        sb.Append(".Your birthday is ").Append(birthday).Append(". [Method ").Append(this.Request.RequestType).Append("]");
        this.Response.Write(sb.ToString());
        this.Response.Flush();
        this.Response.Close();
为什么参数传过来都是空的?

解决方案 »

  1.   

    createQueryString();    函数什么内容啊,怎么都差不得贴出来呢,
    post方式的send()方法,URL中的参数是在send方法里传过去的,你检查一下queryString的内容.
      

  2.   

    function createQueryString() {
        var firstName = document.getElementById("firstName").value;
        var middleName = document.getElementById("middleName").value;
        var birthday = document.getElementById("birthday").value;
        
        var queryString = "FirstName=" + firstName + "&MiddleName=" + middleName
            + "&Birthday=" + birthday;
        
        return queryString;
    }
    客户端的应该不会有错,我从另一个文件copy过来的
      

  3.   

    <script type="text/javascript">
    var xmlHttp;function createXMLHttpRequest() {
        if (window.ActiveXObject) {
            xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
        } 
        else if (window.XMLHttpRequest) {
            xmlHttp = new XMLHttpRequest();
        }
    }
        
    function createQueryString() {
        var firstName = document.getElementById("firstName").value;
        var middleName = document.getElementById("middleName").value;
        var birthday = document.getElementById("birthday").value;
        
        var queryString = "FirstName=" + firstName + "&MiddleName=" + middleName
            + "&Birthday=" + birthday;
        
        return queryString;
    }function doRequestUsingGET() {
        createXMLHttpRequest();
        
        var queryString = "dogp.aspx?";
        queryString = queryString + createQueryString() 
            + "&timeStamp=" + new Date().getTime();
        xmlHttp.onreadystatechange = handleStateChange;
        xmlHttp.open("GET", queryString, true);
        xmlHttp.send(null);
    }function doRequestUsingPOST() {
        createXMLHttpRequest();
        
        var url = "dogp.aspx?timeStamp=" + new Date().getTime();
        var queryString = createQueryString();
        
        xmlHttp.open("POST", url, true);
        xmlHttp.onreadystatechange = handleStateChange;
        xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");    
        xmlHttp.send(queryString);
    }
        
    function handleStateChange() {
        if(xmlHttp.readyState == 4) {
            if(xmlHttp.status == 200) {
                parseResults();
            }
        }
    }function parseResults() {
        var responseDiv = document.getElementById("serverResponse");
        if(responseDiv.hasChildNodes()) {
            responseDiv.removeChild(responseDiv.childNodes[0]);
        }
        
        var responseText = document.createTextNode(xmlHttp.responseText);
        responseDiv.appendChild(responseText);
    }</script>
      

  4.   

    好像这么写:string firstname = this.Request.Parms["FirstName"];
      

  5.   

    正在寻找XMLHttpRequest对象open()  函数的POST用法,学习啦~