C# 文本框文本更改,查询字符串参数不';T

C# 文本框文本更改,查询字符串参数不';T,c#,asp.net,caching,querystringparameter,C#,Asp.net,Caching,Querystringparameter,我正在使用带有AutoCompleteXtender的文本框 输入零件号,单击“查找”-它将填充页面。 我在页面上有一个按钮,它读取文本框的文本,将其用作查询字符串参数,并打开一个新窗口 第一次效果很好。但是 我关上第二扇窗户。 添加新零件号,单击“查找”-它将正确地用新信息填充页面 我点击按钮-问题是- 当它打开新窗口时,它保持原始零件号 我尝试添加第二个querystring参数(datetime),但它仍然保留相同的部件号。我还尝试将文本转移到一个隐藏的标签上,然后从那里读取(认为Auto

我正在使用带有AutoCompleteXtender的文本框

输入零件号,单击“查找”-它将填充页面。 我在页面上有一个按钮,它读取文本框的文本,将其用作查询字符串参数,并打开一个新窗口

第一次效果很好。但是 我关上第二扇窗户。 添加新零件号,单击“查找”-它将正确地用新信息填充页面

我点击按钮-问题是- 当它打开新窗口时,它保持原始零件号

我尝试添加第二个querystring参数(datetime),但它仍然保留相同的部件号。我还尝试将文本转移到一个隐藏的标签上,然后从那里读取(认为AutoCompleteXtender与此有关)。不走运

这是按钮的代码-

protected void btnViewIncidents_Click(object sender, EventArgs e)
    {
        try
        {
            string strDOT = txtXingList.Text;
            DateTime DT = DateTime.Now;
            btnViewIncidents.Attributes.Add("onclick","window.open('Incidents.aspx?DOT=" + strDOT + "&DT=" + DT + "'); return false;");
        }
        catch (Exception ex)
        {
            throw (ex);
        }
    }
以及参数的第二页检索代码

string Crossing = Page.Request.QueryString["DOT"];
        string DT = Page.Request.QueryString["DT"];
        txtXingList.Text = Crossing;

非常感谢您的任何建议/帮助!谢谢

txtlist是否正在其他地方填充?如果是,请检查代码,它可能在按钮单击事件之前被调用

在单击按钮之前会调用一些事件

由于您的表单肯定是method=“post”,因此当您单击BTNViewIdentits时,查询字符串不会更改。
如果页面加载使用查询字符串填充TXTSINGLIST,那么当调用按钮事件时,它将包含错误的值。

页面需要绝对知道您想要一个弹出表单,即使它只是打开一个新选项卡。工作得很有魅力

        try
        {
            string strDOT = txtXingList.Text;
            DateTime DT = DateTime.Now;

            string newWin = "window.open('../Application/AppsSB.aspx?DOT=" + strDOT + "&DT=" + DT + "');";

            ClientScript.RegisterStartupScript
             (this.GetType(), "pop", newWin, true);
        }
        catch (Exception ex)
        {
            throw (ex);
        }

我在方法中设置了一个断点,注意到第二次时,它没有中断-只是用旧的零件号打开了页面。您是否在更改TXTSingList的值时,在每个地方都设置了断点。Text?是的。我一步一步地完成了这个程序,方法是选择新的strDOT。但是,当它执行实际的open.window时,它将重新使用旧的strDOT。想知道它是否与ajax有关。另外,我正在使用firefox进行测试。