2009-09-01 53 views
0

我使用Page_Load中的ScriptManager.RegisterStartupScrit,它非常完美。無法從Page_Load以外的執行中註冊啓動腳本

當我將同一行移動到Page_Unload事件時,它不起作用;腳本沒有註冊。

有什麼建議?

+0

爲什麼要在頁面卸載時嘗試註冊啓動腳本? – CAbbott 2009-09-01 13:37:31

+0

我想根據在Button_Click等事件期間發生的事情輸入腳本。 我不會真的在乎另一種方式,但它必須在Page_Load之外完成。 – Shimmy 2009-09-01 13:40:09

回答

2

Page_Unload事件在創建頁面並輸出html後調用。該事件旨在用於清理必須由頁面釋放的所有資源。

你爲什麼在這裏調用ScriptManager.RegisterStartupScript?

編輯: See here概述了ASP.Net頁面的頁面生命週期。它應該幫助你確定你的代碼的放置位置。最有可能的是你最後一次調用ScriptManager.RegisterStartupScript在Page_PreRender事件中。

+0

我想根據Button_Click等事件發生的情況輸入腳本。 – Shimmy 2009-09-01 13:39:22

+0

PreRender是在處理完控制事件之後,因此您可以在那裏運行您的代碼 – 2009-09-01 13:40:51

+0

這就是答案。 請更新您的原始答案,我會標記它。 – Shimmy 2009-09-01 13:44:54