在我的ASP.NET页面中,我有一个当前正在按预期工作的搜索框。我想要做的是在搜索后将搜索到的值保留在该文本框中(搜索打开一个新页面,尽管我保留了查询字符串中的搜索值)。我可以通过在我的aspx中使用值<%= search%>
来确认变量是否被正确保留,但是当我尝试在我的文本框中显示时,没有显示任何内容。我搜索了几十个论坛帖子,最接近我能说的是我需要对这个文本框进行数据绑定。我不确定我的错误在哪里,但这是我最接近的:
<asp:TextBox ID="SearchTextBox" runat="server" Text='<%# search %>'></asp:TextBox>
Search: <%=search %>
使用代码
public string search;
protected void Page_Load(object sender, EventArgs e)
{
search = Request.QueryString["search"];
SearchTextBox.Text = search;
Page.DataBind();
}
答案 0 :(得分:1)
您必须检查是否是第一次看到带有此
的页面 if (Page.IsPostBack == false)
{
}
首先检查查询字符串是否存在。
答案 1 :(得分:0)
试试这个:
if (Request.QueryString["search"] != null && !IsPostBack)
{
string search = Request.QueryString["search"];
SearchTextBox.Text = search;
}