【发布时间】:2018-01-31 07:06:18
【问题描述】:
我是一名服务器端开发人员,刚接触前端开发。我一直在修改 vanilla Javascript,需要澄清一些概念。
我正在试验的用例是通过 JS 处理图像上传(以及在所述上传到服务器之前由空中 JS 促进的压缩)。
目前我被困在第一步。想象一下以下简单的设置:
<form method="POST" action="some_url">
<input type="file" id="browse_image" onchange="compressImage(event)">
<input type="submit" value="Submit">
</form>
我的问题是:
我在哪一步尝试将图像传递给 JS 函数(假设我的目标是压缩它并将其发送到服务器)?这会发生在图像选择时(即按下browse 按钮)还是在按下Submit 时?我在哪里举办活动以及如何从那里开始?一个带有示例的快速说明性答案会很棒!
我一直在尝试在图像选择时这样做(无济于事):
function compressImage(e){
var reader = new FileReader();
reader.readAsDataURL(e.target.files[0]);
console.log(reader);
}
如果能获得一个概念性的演练以及一个快速的说明性示例,那就太好了。仅限 Vanilla JS,在掌握 JS 的窍门之前,我不会接触 JQuery。
【问题讨论】:
-
您的
input type="submit"中有一个轻微的错字(需要在value="Submit之后加上引号),但除此之外,给定的代码对我来说就很好。你有什么具体问题? -
@Hamms:很好。好吧,
console.log声明喷出FileReader { readyState: 1, result: null, error: null, onloadstart: null, onprogress: null, onload: null, onabort: null, onerror: null, onloadend: null }。这告诉我什么都没有被捕获。对于下一步该做什么,我有两个(或三个)想法,因此是个问题。
标签: javascript