[英]how to preview after upload image javascript?
I have 7 images and I want to be able to preview a file (image) before it is uploaded.我有 7 张图片,我希望能够在上传之前预览文件(图片)。 The preview action should be executed all in the browser without using Ajax to upload the image.
预览动作应该全部在浏览器中执行,不使用 Ajax 上传图像。
<img src="1.gif" class="img-fluid">
<img src="2.gif" class="img-fluid">
<img src="3.gif" class="img-fluid">
<div class="col-md-2">
<input name="image" onchange="previewFile()" type="file" class="d-none">
<?php if (isset($url)) ?>
<img src="<?= images/user.png ?>" id="dialog" class="img-fluid rounded-circle cursor-pointer">
<?php else ?>
<img src="<?= images/avatar.png ?>" id="dialog" class="img-fluid cursor-pointer">
<?php } ?>
</div>
<img src="4.gif" class="img-fluid">
<img src="5.gif" class="img-fluid">
<img src="6.gif" class="img-fluid">
javascript javascript
function previewFile() {
var preview = document.querySelector('img');
var file = document.querySelector('input[type=file]').files[4];
var reader = new FileReader();
reader.addEventListener("load", function () {
preview.src = reader.result;
preview.classList.add("rounded-circle h-25");
}, false);
if (file) {
reader.readAsDataURL(file);
}
}
var imgBtn = document.querySelector('#dialog');
var fileInp = document.querySelector('[type="file"]');
imgBtn.addEventListener('click', function() {
fileInp.click();
})
How can I do this?我怎样才能做到这一点?
try this code.试试这个代码。 nothing big changes in code some logical issue in the following statement.
代码中没有大的变化 以下语句中的一些逻辑问题。
var file = document.querySelector('input[type=file]').files[0];
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<input name="image" onchange="previewFile()" type="file" class="d-none">
<img src="" id="dialog">
<script type="text/javascript">
function previewFile() {
var preview = document.querySelector('img');
var file = document.querySelector('input[type=file]').files[0];
var reader = new FileReader();
reader.addEventListener("load", function () {
preview.src = reader.result;
preview.classList.add("rounded-circle h-25");
}, false);
if (file) {
reader.readAsDataURL(file);
}
}
</script>
</body>
</html>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.