0

YUI 2 Uploaderを使用していくつかのファイルをアップロードしています。ユーザーが複数のファイルをアップロードするので、YUI Uploader の「ファイル キュー」を使用したいと考えています。それはすべて正常に機能しています。ファイルのアップロード中はアップローダーを無効にしているため、ファイルのアップロードを開始すると、新しいファイルをキューに追加できなくなります。

すべてのファイルがアップロードされたら、(JavaScript で) 何かをしたいです。YUI Uploader には、特定のファイルがアップロードされたときのシグナルがありますが、キュー内のすべてのファイルがアップロードされたときではありません。すべてのファイルがアップロードされたことを検出する方法はありますか?

4

2 に答える 2

1

ファイルのオブジェクト (または配列) を保持し、uploadComplete ハンドラーで、終了したばかりのファイルを削除します。何も残っていない場合は、アップロードのファイナライズ関数を呼び出します。

ここでの実装例、http://tivac.com/upload/upload.jsいくつかのバグがありますが、この特定の問題を解決します。

于 2010-08-30T15:46:26.210 に答える
0

uploadcompleteイベントのイベントハンドラーを作成します。yuiアップローダーのドキュメントをご覧ください:http: //developer.yahoo.com/yui/docs/YAHOO.widget.Uploader.html

http://developer.yahoo.com/yui/examples/uploader/uploader-advanced-queue.html

function onUploadComplete(event) {
        rowNum = fileIdHash[event["id"]];
        prog = Math.round(100*(event["bytesLoaded"]/event["bytesTotal"]));
        progbar = "<div style='height:5px;width:100px;background-color:#CCC;'><div style='height:5px;background-color:#F00;width:100px;'></div></div>";
        singleSelectDataTable.updateRow(rowNum, {name: dataArr[rowNum]["name"], size: dataArr[rowNum]["size"], progress: progbar});
    }
于 2010-08-30T10:47:02.553 に答える