A页面 有一个textbox控件txtSearch,一个button按钮btn_search
B页面 也有一个textbox控件txtSearch,一个button按钮btn_searchA页面的事件
private void btn_search_Click(object sender, System.EventArgs e)
{
String searchText=txtSearch.Text.ToString();
Response.Redirect((new StringBuilder("B.Aspx"))  //向B页面查询
.Append("?tags=")
.Append(Server.UrlDecode(searchText)).ToString(),false);}B页面Page_Load时有一句:txtSearch.Text ==Request.QueryString["tags"].ToString();
将从A页面传过来的tags比如是“aaa”存到了txtSearch中,这些都没问题。问题是,B页面的事件如下(同A页面的按钮事件代码是一样的):
private void btn_search_Click(object sender, System.EventArgs e)
{String searchText=txtSearch.Text.ToString();Response.Redirect((new StringBuilder("B.Aspx"))  //向本页面查询
.Append("?tags=")
.Append(Server.UrlDecode(searchText)).ToString(),false);}
无论我在B页面中的 txtSearch 输入什么值,跟踪到String searchText=txtSearch.Text.ToString()时searchText的值始终都是原来在A页面传过来的值"aaa",怎么回事呢???如果我把B页面Page_Load时那一句txtSearch.Text ==Request.QueryString["tags"].ToString()删除,则在B页面的btn_search_Click事件时,就能取到B页面txtSearch.Text所输入的值,而不再是"aaa"。好奇怪的问题!请各位指教!

解决方案 »

  1.   

    txtSearch.Text ==Request.QueryString["tags"].ToString();
    ==
    还是
    =
    ??
      

  2.   

    是 txtSearch.Text =Request.QueryString["tags"].ToString()
    赋值.
      

  3.   

    B页面加上
    if(!Page.IsPostBack)
    {
     txtSearch.Text =Request.QueryString["tags"].ToString()
    }试试!
      

  4.   

    xray2005: 我试了你的方法,问题解决了:) 谢谢拉!
    奇怪,怎么会这样的呢?