0

ファイルのアップロードを処理する ASP.NET のカスタム コントロールを使用しています。コントロールには、次のようなものを使用してコード ビハインドにハンドラーがあります。

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

そのサブ内で、サーバーにポストバックしてデータベースでいくつかの作業を行いますが、戻ってきたときにその時点で JavaScript を登録する必要があります。

ただし、Page.ClientScript.RegisterClientScriptBlockまたはを使用するScriptManager.RegisterClientScriptBlockと、スクリプトがページに読み込まれません。ページを実行して更新し、アップロード ダイアログ ウィンドウを閉じるには、この JavaScript が必要です。ページが既に読み込まれているためだと思います。

誰もこれを行う方法について何か良いアイデアを持っていますか?

4

1 に答える 1

0

よし、結果的にはこんな感じ…

サーバー側 (コード ビハインド) では、 sub でメソッドを使用してその変数にUploadFileComplete()アクセスできます。EventArgse.CallbackData = [WHATEVER]

次に、JavaScript で、この組み込みのクライアント関数を使用します。

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

そして、そのargs.callbackData変数には、サーバー側を介して入力したものが含まれます。かなり滑らかだと思います!しかし、彼らがそれを十分に文書化していなかったため、理解するのは困難です。

このように、独自のメソッドを追加する必要はありませんRegisterClientScriptBlock。組み込みのメソッドを使用して、必要なものを JavaScript に渡すことができるからです。

于 2009-06-11T22:45:23.860 に答える