Re: [問題] ASP.NET的問題
※ 引述《ohho (煩悶 人生)》之銘言:
: 所以我在Button_Click那加上Response.Redirect("main.aspx?page=1");
: 這樣點Button是沒問題的,
: 但是如果在TextBox鍵入資料(也就是焦點還在TextBox上)按enter,
: 一樣會有網址列為main.aspx?page=X的問題(資料顯示都是正確的前20筆),
: 請問這有什麼解法嗎?
: 還是我之前某個想法是錯的?
: 請各位幫忙解答一下,感激不盡!
不知道我的作法有沒有比較不笨
我也是土法煉鋼 XD
不過應該不會有像你這樣的網址問題
因為button是隨著頁面的多寡動態產生
所以每個button都可以給一個unique的ID,eg. Page1, Page2,etc
for(i=xxx....)
{
Button tempbutton = new Button();
tempbutton.ID = "Page"+i.ToString();
....
//全部button都使用同一個EventHandler
tempbutton.Click += new EventHandler(button_click)
}
在button_click事件裡依據sender的ID來判斷是按了那個button
void button_click(object sender, EventArgs e)
{
...
Session["Page"] = ((Button)(sender)).ID;
...
}
在page_load()裡
去讀session來判斷接下來的畫面要讀取哪幾筆資料
if(Session["Page"] == null)
{
//預設顯示畫面
}
else
{
//根據Session["Page"]的值來判斷要顯示第幾面
}
....
//最後再把Session殺掉,讓從別的地方來的頁面一律先顯示預設畫面
Session["Page"] = null;
這樣就不會有網址的問題了
一直都會維持在main.aspx XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.133.110.47
討論串 (同標題文章)
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章