html - 在输入选择文件上显示图像

标签 html css

我已经完成了更改个人资料图片的输入,但我希望当我选择一个新文件时,我的输入会自动更改为新图片。

<div class="form-group" align="center">
  <div style="position:relative; bottom:-90px; opacity:0.5; z-index:1; color:black;background:white;font-weight:bold">alterar</div>
  <label style="display: block" for="avatar">
    <img src="{{  $user->avatar }}" style="-moz-border-radius: 50px;border-radius: 50px;height: 80px" id="imgupload">
  </label>
  <div class="col-md-6">
    <input type="file" class="form-control" name="avatar" id="avatar" style="display: none">
  </div>
</div>

我不确定如何才能做到这一点。

编辑

我完成了添加 JS,但是当我选择一个新图像时,它正在改变圆 Angular 边框..

JS:

    function readFile() {
      if (this.files && this.files[0]) {
        var FR= new FileReader();
        FR.onload = function(e) {
          document.getElementById("imgupload").src = e.target.result;
        };
        FR.readAsDataURL( this.files[0] );
      }
    }

    document.getElementById("avatar").addEventListener("change", readFile, false);

https://jsfiddle.net/gst96zax/

最佳答案

我添加了以下JS

    function readFile() {
      if (this.files && this.files[0]) {
        var FR= new FileReader();
        FR.onload = function(e) {
          document.getElementById("imgupload").src = e.target.result;
          document.getElementById("imgupload").style.width = "80px";

        };
        FR.readAsDataURL( this.files[0] );
      }
    }

    document.getElementById("avatar").addEventListener("change", readFile, false);

https://jsfiddle.net/gst96zax/1

关于html - 在输入选择文件上显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39296993/

相关文章:

css - Vue 组件 - 包含 Laravel 目录中的 css 文件

javascript - jQuery - 用于移动设备的 mousemove

python - 使用 Python 的正则表达式模式在 HTML 页面中搜索

php - 使添加到购物车按钮适用于简单的网上商店

python - 如何在提交时验证 Flask 表单?

css - SVG 作为 MIXIN 中的背景图像,通过 SASS 变量设置颜色

html - Font-Awesome 版本 6 图标未显示

html - CSS3 3D 动画在 Safari 中消失

html - 仅设置文档中第一个 h1 的样式

css - 使用 CSS 将一组元素居中