我在A網頁, 按下一個按鈕後
新增一個 ViewState 變數: ViewState.Add("DateText",tbxDateText);
以及一個 Session 變數: Session.Add("Repeat",true);
然後, 重導回自己: Response.Redirect (Request.Url.AbsoluteUri,true);
然後在 Page_Load 裡去判斷...
if (!this.IsPostBack)
{
if (Session["Repeat"] != null)
{
Session.Remove("Repeat");
tbxDateText.Text = ViewState["DateText"].ToString();
Page.RegisterScriptBlock("Repeat","<script language=''...");
}
}
結果得到, ViewState["DateText"] = null 的結果..
可是我明明在按下按鈕時有設值給他了呀....
奇怪, 如果他只能活在一次的Page_Load執行緒裡的話
那我用全域變數 public string dateText 來給值, 抓值就好了
那 ViewState 到底能拿來幹嘛?
"裝高級" 用的嗎? 好讓人看到程式碼覺得這個設計師很厲害,
寫的東西人家看不懂 (其實用全域變數就可以了??)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.229.61.172