简体   繁体   English

Request.QueryString未定义

[英]Request.QueryString is undefined

i am using the following code to get LogedInUser from LogIn.aspx and send it to Chat.aspx then send it to FrmForAjaxCalls to return data from Db and fill it on div but in running time it telling me in browser console request.querystring is undefined 我正在使用以下代码从LogIn.aspx获取LogedInUser并将其发送到Chat.aspx然后将其发送到FrmForAjaxCalls以从Db返回数据并在div上填充它,但是在运行时,它告诉我在浏览器控制台中的请求。

here is LogIn.aspx code 这是LogIn.aspx代码

protected void Button3_Click(object sender, EventArgs e)
{

    Response.Redirect("Chat.aspx?LGN2="+TextBoxUserName.Text);
}

and this is Chat.aspx javascript code 这是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();
    }

then i send it to FrmForAjaxCalls to return data but its return nothing on the div with Request.QueryString is undefined exption on browser console 然后我将其发送到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);

}

In your paste for Chat.aspx , you're calling it LGN instead of LGN2 ... Could that be all? Chat.aspx的粘贴中,您将其称为LGN而不是LGN2 ……就这样吗? In situations like this, your first mission should be to add logging throughout the process to see where it falls apart, so you can pinpoint where the problem is. 在这种情况下,您的第一个任务应该是在整个过程中添加日志记录,以查看问题所在,以便您可以查明问题所在。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM