无法将文本框中的输入传递给查询字符串,然后将该字符串保留在此框中

时间:2010-05-28 09:12:09

标签: c# asp.net

我有一个简单的ASP.net页面:

<form id="form1" runat="server">
    <p><asp:TextBox id="input_box" runat="server"></asp:TextBox>

       <asp:Button Text="OK" runat="server" OnClick="run" /></p>
 </form>

我想将input_box中的输入发送到查询字符串,然后在页面重新加载时将此输入保留在input_box中。

这是页面背后的代码:

protected void Page_Load(object sender, EventArgs e)
{       
    input_box.Text = Request.QueryString["input"];
}
protected void run(object sender, EventArgs e)
{
    string url = string.Format("?input={0}", input_box.Text);
    Response.Redirect(Request.Url.AbsolutePath + url);
}

问题是当查询字符串不为空时,input_box中的字符串无法传递给查询字符串。如何纠正?

1 个答案:

答案 0 :(得分:0)

如果我理解正确

我认为回发邮件可能会在发送到查询字符串之前清除文本框。 尝试将此添加到页面加载        if(IsPostBack)                 返回;

这将停止清除输入框或重置回原始查询字符串

希望这个帮助