请求.QueryString未定义

本文关键字:未定义 QueryString 请求 | 更新日期: 2023-09-27 18:13:49

我使用以下代码从LogIn.aspx获取LogedInUser并将其发送到Chat.aspx,然后将其发送到FrmForAjaxCalls以从Db返回数据并在div上填充它,但在运行时它在浏览器控制台上告诉我请求。查询字符串未定义

这里是LogIn.aspx代码

protected void Button3_Click(object sender, EventArgs e)
{
    Response.Redirect("Chat.aspx?LGN2="+TextBoxUserName.Text);
}

这是Chat.aspx javascript代码

<script type="text/javascript" >
    var xmlhttp;
    function GetData() {
        xmlhttp = null;
        if (window.XMLHttpRequest) {
            xmlhttp = new XMLHttpRequest();
        }
        else if (window.ActiveXObject) {
            xmlhttp = new ActiveXObject();
        }
                  string LogedInUser = Request.Cookies["LogedInUser"].Value;

        var LogedInUser = Request.QueryString["LGN2"];
        xmlhttp.onreadystatechange = function () {
            if (xmlhttp.readystate == 4 || xmlhttp.status == 200) {
                document.getElementById("MyDiv").innerHTML = xmlhttp.responseText;
            }
        }
        xmlhttp.open("GET", "FrmForAjaxCalls.aspx?LGN=" + LogedInUser, true);
        xmlhttp.send();
    }

然后我把它发送到FrmForAjaxCalls返回数据,但它的返回没有在div与Request.QueryString是未定义的浏览器控制台

 protected void Page_Load(object sender, EventArgs e)
{
    string LogedInUser = Request.QueryString["LGN2"].ToString();
    StringBuilder html = new StringBuilder();
        String result = String.Empty;
        SqlConnection cnn = new SqlConnection(ConfigurationManager.ConnectionStrings["CRConnection"].ConnectionString);
        SqlCommand cmd = new SqlCommand("Select MessageNum , Message , SenderName ,Date from Message where ReciverUserName='" + LogedInUser + "'", cnn);
        cnn.Open();
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        DataTable dt = new DataTable();
        da.Fill(dt);
        html.Append("<div id = xxx> ");
        html.Append("<table border='1'>");
        html.Append("<tr>");
        foreach (DataColumn col in dt.Columns)
        {
            html.Append("<th>");
            html.Append(col.ColumnName);
            html.Append("</th>");
        }
        html.Append("</tr>");
        foreach (DataRow row in dt.Rows)
        {
            html.Append("<tr>");
            foreach (DataColumn col in dt.Columns)
            {
                html.Append("<td>");
                html.Append(row[col.ColumnName]);
                html.Append("</td>");
            }
            html.Append("</tr>");
        }
        html.Append("</table>");
        html.Append("</div>");
        Response.Write(html);
}

请求.QueryString未定义

在您的Chat.aspx粘贴中,您将其称为LGN而不是LGN2…就这些吗?在这种情况下,您的首要任务应该是在整个流程中添加日志记录,以查看问题出在哪里,这样您就可以确定问题出在哪里。