- 締切済み
input type="file"で複数選択を可能にする方法
初めて利用させていただきます。初心者の為、できれば詳細なご回答いただけると嬉しいです。 早速ですが、<input type="file">の実行結果は、テキストエリアの横に【参照】ボタンがあるような状態になります。 このテキストエリアの部分に複数のファイルをどんどん選択して格納できる方法を探しております。 イメージとして、3行くらいがデフォルト表示のテキストエリアがあり、その横に【参照】と【削除】ボタンが上下に並び、 参照で選択したファイルがそのテキストエリアに格納されてゆき、3行を超えるとスクロールバーが表示される、 格納されたあるファイル名を反転させて【削除】選択で削除される、 というものを作りたいのです。 今回、クライアントの要望で添付ファイルは1000個まで選択可能という状態を実現しなくてはならず、<input type="file">を1000個並べる訳にもいかない為、とても困っております。 且つ、java script禁止令を出されています。 ファイル形式はjspですので、formのactionでサーバ側で処理を制御することは可能です。 念の為、私が探し出したソースで一番理想に近いものを併記致します。 <table> <tr> <td rowspan="2" nowrap><select name="File" size="3" multiple> <option value=""> </select></td> <td> <iframe width="60" height="25" frameborder="no" scrolling="no" src="とあるexeファイルを指定"></iframe> </td> <td rowspan="2" valign="top" nowrap><font size="-1">「参照...」ボタンをクリックして<br>ファイルを指定してください。</font></td> </tr> <tr> <td nowrap><input type="button" value=" 削除 " onClick="RemoveFile( this.form )"></td> </tr> </table>
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
お礼
ありがとうございます。 当初の疑問であった『ファイルを複数格納できるテキストエリア』については簡単には解決できそうにないので、今回は諦めることに致しました。 なので、この質問を閉めようと思います。 私なりの対処法としては、やはりJavaAppletを埋め込んで、 圧縮対象は .setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY) でフォルダに絞って、そのフォルダの中に1000個入ってたらそれで良し、としようかと… ただ、今回の対象になるファイルが画像ファイルに限定されるかもしれないので、 もし指定されたフォルダの中に画像以外のファイルがあったらどうするのか、などの問題は残るのですが。 (無視するかfilefilterを設定するべきか) 現状、Appletの動作状況が芳しくないので、srcは公開できませんが、 頑張ります。 ご返答くださったお二人に感謝いたします。ありがとうございました。