複数のパーツからなるフォームが欲しいです。
最初の部分は画像で、実際にアップロードする前に画像のプレビューを含む複数のファイルをアップロードします。
2番目の部分には、さまざまなテキストフォームフィールドがあります。
PHPとMySQLを使用して、2番目の部分が正常に構築され、機能しています。画像のアップロードも機能しています。しかし、フォームを送信する前に画像のプレビューを表示する方法がわかりません。
編集:
答えを形成するコードを使用する:
<input type='file' onchange="readURL(this);" />
<img id="blah" src="#" alt="your image" />
と:
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#blah')
.attr('src', e.target.result)
.width(150)
.height(200);
};
reader.readAsDataURL(input.files[0]);
}
}
うまく機能しますが、サムネイルは1つしか表示されません。ファイルごとに動的に画像のサムネイルを作成したい。
私はしようとしています :
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
var container = $('#previews');
var image = $('<img>').attr('src', e.target.result).width(150);
image.appendTo(container);
};
reader.readAsDataURL(input.files[0]);
}
}
と:
<input type='file' name="files[]" onchange="readURL(this);" multiple />
<div id="previews"></div>
これは機能しますが、入力されたファイルごとにループするにはどうすればよいですか?