Bootstrap’ta file upload/fotoğraf yükleme sırasında bilgisayardan seçilen fotoğrafı jquery ile önizleme olarak göstereceğiz. Burada yapacağımız mantık şu şekilde;
- Sayfamız içinde boş bir img tagı oluşturuyoruz.
- Bilgisayardan fotoğraf seçildikten sonra seçilen fotoğrafın yolunu img tagının src özelliğine atıyoruz.
Sayfamızda aşağıdaki gibi file input ve img tagımız olsun.
<div class="container">
<div class="col-md-6">
<div class="form-group">
<label>Upload Image</label>
<div class="input-group">
<span class="input-group-btn">
<span class="btn btn-default btn-file">
Browse… <input type="file" id="imgInp">
</span>
</span>
<input type="text" class="form-control" readonly>
</div>
<img id='img-upload'/>
</div>
</div>
</div>
Fotoğraf seçildikten sonra seçilen fotoğrafı önizleme olarak gösterecek jquery kodumuz:
$(document).ready( function() {
$(document).on('change', '.btn-file :file', function() {
var input = $(this),
label = input.val().replace(/\\/g, '/').replace(/.*\//, '');
input.trigger('fileselect', [label]);
});
$('.btn-file :file').on('fileselect', function(event, label) {
var input = $(this).parents('.input-group').find(':text'),
log = label;
if( input.length ) {
input.val(log);
} else {
if( log ) alert(log);
}
});
function readURL(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#img-upload').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
$("#imgInp").change(function(){
readURL(this);
});
});




Bülent Üstündağ
yükleyeceğim foto önizlemesi 1920×1080 tüm sayfada bu görünüyor. java script koduyla boyutu 300-400 lerde nasıl gösterdirim. teşekkürler.
Okan Taştan
$(‘#img-upload’).attr(‘src’, e.target.result);
bu koddan sonra
$(‘#img-upload’).css(‘width’, ‘400px’);
$(‘#img-upload’).css(‘height’, ‘300px’);
bunu ekleyebilirsin