Request.QueryString未定义

时间:2015-09-21 10:23:26

标签: javascript c# asp.net

我正在使用以下代码从LogedInUser获取LogIn.aspx并将其发送到Chat.aspx,然后将其发送到FrmForAjaxCalls以从Db返回数据并将其填入div但在运行时它告诉我在浏览器控制台  request.querystring未定义

这里是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以返回数据,但是在Request.QueryString的div上没有返回任何内容在浏览器控制台上是未定义的exption

 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);

}

1 个答案:

答案 0 :(得分:1)

Chat.aspx的粘贴中,您将其称为LGN而不是LGN2 ...这可能就是全部吗?在这种情况下,您的首要任务应该是在整个过程中添加日志记录以查看它崩溃的位置,以便您可以确定问题所在。