input type=fileについて、2つご質問させてください。
1.ユーザーからのアップロードファイルの個数を制限する事は可能でしょうか。maxlengthを指定してもファイルサイズの上限しか指定できないように思えます。documentをロード後にjsでカウントさせて、に以上ならinputをhideすることも考えましたが、スマートな方法ではないような気もしています。
2.取得したdataURLからサムネイルを表示させていますが、サムネイルのサイズを指定は可能でしょうか?
【追記】
ご指摘を頂きました、サムネイル表示につきまして、コードを記述させて頂きます。
サーバーサイドでというご意見もありますが、現状JSで処理できればと考えております(AJAXを使用すれば
サーバーサイド側で遷移せずにできるのかもしれませんが、まだajaxに明るくなく。。)
イメージとしてはアップロードしたファイルののオブジェクトのプロパティを変更してサムネイルにうまく出力すれば(縦横非を維持して)うまくすべて共通サイズにして表示することやサーバー側にも格納することができるのかと模索しております。
下記のように、e.target.resultでアップロードしたデータのdataURLを呼び出し、動的に生成したspanタグのsrc属性に格納することでサムネイルを表示する仕組みを検討しております。
Javascript
1 var readerObj = new FileReader(); 2 3 readerObj.onload = (function(theFile) { 4 return function(e) { 5 var span = document.createElement('span'); 6 span.innerHTML = ['<img class="thumbnail" src="', e.target.result, 7 '" title="', escape(theFile.name), '"/>'].join(''); 8 document.getElementById('list').insertBefore(span, null);
回答2件
あなたの回答
tips
プレビュー