2009-06-11 138 views
0

我在ASP.NET中使用自定義控件來處理文件上傳。控制在代碼隱藏使用像這樣的處理程序:registerClientScriptBlock在自定義處理程序中?

Protected Sub UploadFileComplete(ByVal sender As Object, ByVal e As UploadControl.FileUploadCompleteEventArgs) Handles UploadControl.FileUploadComplete 

在這一分,我回發到服務器,做數據庫的一些工作,但後來我回來的時候,我想的JavaScript在那個時候註冊。

但是,當我使用Page.ClientScript.RegisterClientScriptBlockScriptManager.RegisterClientScriptBlock時,腳本不會加載到頁面上。我需要這個JavaScript來運行和更新頁面,並關閉上傳對話窗口。我認爲這是因爲該頁面已經加載。

有沒有人有如何做到這一點好主意?

回答

0

好吧所以原來是這樣的......

在服務器端(代碼隱藏),在UploadFileComplete()子,你可以通過使用方法e.CallbackData = [WHATEVER]訪問EventArgs變量。

,然後在JavaScript中,你使用這個內置的客戶端功能:

function UploadComplete(args){ 
    alert(args.callbackData); 
} 

args.callbackData變量不管你把通過服務器端。漂亮光滑,我想!但很難找出原因,他們沒有記錄得很好。

這樣,您不需要添加自己的RegisterClientScriptBlock方法,因爲您可以使用其內置方法將任何想要的JavaScript傳遞給JavaScript。

相關問題