我正在尝试向客户展示他选择的图像:
<input type="file" onchange="showImage(this)"/>
但我无法读取输入的值,因为我检查了 here .是否可以显示图片?
在 onchange
中,我可以将表单发送到服务器,服务器可以将数据发回,但这真的有必要吗?没有ping-pong到服务器,客户端不能显示数据吗?是安全问题吗?
最佳答案
您可以使用 FileReader web-api 对象,请参阅此代码段:
HTML
<input id="src" type="file"/> <!-- input you want to read from (src) -->
<img id="target"/> <!-- image you want to display it (target) -->
javascript
function showImage(src,target) {
var fr=new FileReader();
// when image is loaded, set the src of the image where you want to display it
fr.onload = function(e) { target.src = this.result; };
src.addEventListener("change",function() {
// fill fr with image data
fr.readAsDataURL(src.files[0]);
});
}
var src = document.getElementById("src");
var target = document.getElementById("target");
showImage(src,target);
关于javascript - 如何在不向服务器发送数据的情况下显示选定的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17138244/