2010-07-15 23 views
0

基本上我想要一些JavaScript被髮回客戶端,並從UpdatePanel內的回發執行。此外,這是一個可重用的WebControl內部。如何獲得客戶端腳本在ASP.NET回發上執行? (從UpdatePanel)

我試過this.Page.ClientScript.RegisterStartupScriptthis.Page.ClientScript.RegisterClientScriptBlock,但是Firebug顯示這些腳本不會在回發的回覆中發回。

我也試圖直接在Render 方法中的控件的主div內寫入一個<script>標記,該標記確實發回但未執行。

我得到了一個hacky解決方案,但理想情況下尋找更清潔的解決方案。黑客將添加一個1×1像素img與寬度/高度設置爲0,並使用它的onload事件來執行該腳本,並工作,但它似乎必須有一個更乾淨的方式來做到這一點。

回答

3

如果我理解正確,那麼請查找endRequest事件 - 以避免加載圖像。有了這段代碼,你可以在JavaScript端獲得面板更新的事件。

var prm = Sys.WebForms.PageRequestManager.getInstance();  
prm.add_initializeRequest(InitializeRequest); 
prm.add_endRequest(EndRequest); 

function InitializeRequest(sender, args) {  
} 

function EndRequest(sender, args) { 
} 
+0

這樣做,謝謝。 – Davy8 2010-07-15 17:45:37

相關問題