Gmailは、ユーザーがCTRLボタンを使用してアップロードする複数のファイルを選択できるようにするインターフェイスのアップデートをリリースしました。彼らはどのようにそれをしますか?新機能について読んで、ここでスクリーンショットを見ることができます:
http://gmailblog.blogspot.com/2009/02/updates-to-attachments-multi-select-and.html
Gmailは、ユーザーがCTRLボタンを使用してアップロードする複数のファイルを選択できるようにするインターフェイスのアップデートをリリースしました。彼らはどのようにそれをしますか?新機能について読んで、ここでスクリーンショットを見ることができます:
http://gmailblog.blogspot.com/2009/02/updates-to-attachments-multi-select-and.html
GoogleがGmailで行ったように、フラッシュベースのソリューションを見つける必要があります。あなたはまさにそれを提供するこのjQueryプラグインを試すことができます:jQueryファイルアップロードプラグイン
これが私が使用した良いライブラリです:SWFUpload
もちろん、これはJavaScriptライブラリであり、jQueryプラグインではないため、移植性が大幅に向上します。
RFC 1867をご覧ください。これは、マルチパート/混合エンコーディングを使用してHTTP経由でファイルをアップロードする方法を定義しています。Apache Commons FileUploadライブラリを使用して、Javaでこれを行うことができます。Googleがどのようにそれを行うのかはわかりませんが、ページでJavaScript処理を使用して複数選択を管理できます。
Gmailが使用する方法ではありませんが、次のリンクをいくつかのjqueryと組み合わせると、無制限の数のファイルを同時にアップロードできます。リンク
GoogleはFlashを使用していませんが、実際にはいくつかの巧妙なjavascriptを使用しています(まあ、それが彼らのすべてのようです:-))。javascriptとcssを使用して、ユーザーがアップロードするファイルを選択できるファイルチューザーを作成できます。次に、非表示のiframeを使用します。アップロードファイルを使用してフォームを投稿するという行為は、非表示のiframeを対象としているため、サーバーから正常に返された結果は、その非表示のiframeに送られます。javascriptを使用して、そのiframeのドキュメント本文を監視し、ファイルがいつアップロードされるかを確認します。
このリンクは、基本的な概念の簡単な例のようです:http ://www.seemysites.net/projFolder/uploader/