javascript - 显示来自输入标签的图像,无法检索 src 中的数据

标签 javascript html input src

这里我有一个在我的网页上显示图像的功能。但问题是当我尝试检索“src”的值时(显然我正在尝试获取以 base64 编码的数据)我得到一个空字符串但我可以在我的网站上看到图像以及 src 的值: Screenshot1

这是我的函数,console.log(reader.result) 的结果是一个空字符串。

HTML :

<input id="avatar" type="file" onchange="previewFile()">
<img id="image" width="200px">

Javascript:

function previewFile() {
      var preview = document.getElementById("image");
      var file    = document.querySelector('input[type=file]').files[0];
      var reader  = new FileReader();

      reader.addEventListener("load", function () {
        preview.src = reader.result;
      }, false);

      if (file) {
        var el = reader.readAsDataURL(file);
      }
        console.log(reader.result);
    }

如何获取数据?

感谢您的帮助。

最佳答案

console.log 输出空白的原因是因为您在图像加载之前调用它。将 console.log 移动到加载函数,您将看到输出。

function previewFile() {

      var preview = document.getElementById("image");
      var file    = document.querySelector('input[type=file]').files[0];
      var reader  = new FileReader();

      reader.addEventListener("load", function () {
        preview.src = reader.result;
        console.log(reader.result);
      }, false);

      if (file) {
        var el = reader.readAsDataURL(file);
      }


}

关于javascript - 显示来自输入标签的图像,无法检索 src 中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47487843/

相关文章:

javascript - 选择以所选字符开头的特定 li 元素

javascript - 通过 Javascript 禁用文本字段

Javascript。带有 React 的可拖动 div

javascript - 如何在 JQuery 中将 text/html 附加到其他 jquery 标签旁边

css - 输入类型 'date'

javascript - 输入字段未返回预期值

python - 如何检查用户输入的姓名?

javascript - 引导冲突汉堡菜单显示

javascript - angularjs对话框表单数据不更新范围

javascript - jQuery parent 有两个类