文本框文本改变,querystring参数没有't

本文关键字:文本 参数 改变 querystring | 更新日期: 2023-09-27 18:15:15

我使用的是带有AutoCompleteExtender的文本框。

输入零件号,点击查找-它会填满页面。我在页面上有一个按钮,它读取文本框的文本,将其用作querystring参数,并打开一个新窗口。

第一次效果很好。但我关闭了第二个窗口。添加新零件号,单击查找-它将正确地填充新信息的页面。

我点击按钮——问题来了当它打开新窗口时,它保存着原始部件号。

我已经尝试添加第二个查询字符串参数(datetime),它仍然保持相同的零件号。我还尝试将文本转移到一个隐藏的标签,并从那里阅读它(认为自动完成扩展器与它有关)。没有运气。

按钮的代码-

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;
任何建议/帮助都是非常感谢的!谢谢!

文本框文本改变,querystring参数没有't

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

在按钮点击之前调用一些事件。

既然你的表单肯定是一个方法="post",那么当你点击btnviewIncidents查询字符串将不会改变。如果页面加载使用查询字符串填充txtXingList,那么当按钮事件被调用时,它将包含错误的值。

页面需要完全知道您想要一个弹出式表单,即使它只是打开一个新选项卡。效果很好。

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