javascript - 显示图像预览直至上传

标签 javascript jquery

我测试了这个脚本,请参见此处。但我无法工作,因为当选择图像时,只显示代码而不显示图像。

<script>
jQuery(document).ready(function(e){
    jQuery('#file_input').change(function(e) {
        //alert("okokok");
        /**/
        readFile(this.files[0], function(e)  {
            //manipulate with result...
            jQuery('#output_field').text(e.target.result);
        });
    }); 
});

function readFile(file, callback){
    var reader = new FileReader();
    reader.onload = callback
    reader.readAsText(file);
}
</script>

HTML 代码:

> <input type="file" id="file_input" class="foo" /> <div
> id="output_field" class="foo"></div>

当选择我想要的文件时,只显示编码文字和数字,不显示图像。我不知道这是如何或为什么会发生?

最佳答案

试试这个代码:

jQuery(document).ready(function(e){

    jQuery('#file_input').change(function(e) {

        //alert("okokok");



        /**/
        readFile(this.files[0], function(e) 
        {
            //manipulate with result...
            jQuery('#output_field').src(e.target.result);
        });




        }); 




});

function readFile(file, callback){
    var reader = new FileReader();
    reader.onload = callback
    reader.readAsDataURL(file);

}

这里假设#output_field是一个图像,否则您应该将其更改为img元素。 这篇文章可能会有所帮助:http://www.javascripture.com/FileReader

关于javascript - 显示图像预览直至上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41233415/

相关文章:

javascript - Angular 2 - 为什么动态组件的绑定(bind)被破坏?

<body> 中的 JavaScript

javascript - HTML5 音频加载和播放无法在 iPad 上运行

jquery - 需要根据下拉列表中所选项目的值设置一个变量

javascript - 相同的代码不一样

javascript - 为什么标题转换在 chrome 和 firefox 中有效,但在 edge 中无效?

javascript - 使用 javascript 在单击时更改按钮文本/值

jQuery 在each() 和自定义函数方面遇到麻烦

javascript - 基础选项卡不起作用

javascript - 防止 iframe 加载响应式设计