从文件输入标签中的选定文件渲染图像以进行预览

时间:2014-07-05 09:56:26

标签: html5 image

现在我有一个表单字段:

<input id="my_img_field" type="file"/>

在浏览器中选择图像后,我想在目标img标记上呈现所选图像文件:

<img id="image_preview" />

但我希望在$('#my_img_field').change事件之后执行此操作,即稍后点击某个按钮时我可能希望这样做。

我听说这可以使用HTML5技术完成。有人可以教我怎么做?

2 个答案:

答案 0 :(得分:2)

vanilla js中的代码

var file = document.getElementById('my_img_field').files[0]
    var fr = new FileReader()
    fr.readAsDataURL(file)
    fr.onload = function(e) {
      var img = document.getElementById('image_preview')
      img.src = this.result
    } 

答案 1 :(得分:0)

以下方法可行:

var file = $('#my_img_field')[0].files[0];
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function(e) {
    var img = $('#image_preview');
    img.attr('src', this.result);
}