2016-11-13 27 views
0

我是新來的asp.net。這是場景。我正在嘗試構建搜索功能。如果我在搜索框中輸入值,即「測試」,然後單擊搜索圖標,SQL Server會返回結果。我的datapage size =「1」有限。當我點擊下一頁時,它刷新頁面,我的搜索框丟失了我在這種情況下輸入的值「測試」。如果沒有值傳遞,SQL Server將返回一個默認結果,所以每次我瀏覽它的頁面時,它僅適用於第一頁,每次點擊後返回默認值。我綁定數據頁的PreRender上的列表視圖。這裏是代碼片段。數據傳呼機回傳導致價值損失

protected void search_ServerClick(object sender, EventArgs e) 
    { 
     mydatapager_PreRender(sender, e); 
    } 
    protected void mydatapager_PreRender(object sender, EventArgs e) 
    { 
     string var_search_firstname = globalsearchinput.Value.ToString(); 
     string var_search_city = citysearchinput.Value.ToString(); 
     string var_search_state = statesearchinput.Value.ToString(); 
     bool isadvancedsearch = false; 
     //Determine whether it's advanced search or not. 
     string MethodCaller = ""; 

     //MethodCaller = ((HtmlButton)sender).ID; 

     //if (MethodCaller == "search") 
     //{ 
     // isadvancedsearch = false; 
     //} 
     //else 
     //{ 
     // isadvancedsearch = true; 
     //} 

     Utility utl = new Utility(); 

     friendrequestsentnotificationpanel.Visible = false; 

     listview1.DataSource = utl.SearchProfile(var_search_firstname, var_search_city, var_search_state, isadvancedsearch); 
     listview1.DataBind(); 
    } 

回答

0

在preRender中添加ispostback==false條件。它有助於保留serch字符串