Javascript 上传前的精细上传器预览图像-FileReader

Javascript 上传前的精细上传器预览图像-FileReader,javascript,fine-uploader,Javascript,Fine Uploader,此问题涉及加宽精细上载器() 我想在上传开始前显示图像预览。没有自动上传。多文件选择器-没有单个文件输入元素 .on('submitted', function(event, id, filename) { $('<img id="pprev'+id+'" src="#" />').appendTo("#previewupload"+id); readURL(this,id); // WHAT DO I NEED TO USE FOR THIS ? } ..

此问题涉及加宽精细上载器()

我想在上传开始前显示图像预览。没有自动上传。多文件选择器-没有单个文件输入元素

.on('submitted', function(event, id, filename) {
    $('<img id="pprev'+id+'" src="#" />').appendTo("#previewupload"+id);
    readURL(this,id);     // WHAT DO I NEED TO USE FOR THIS ?
}

...
manualuploader.fineUploader('uploadStoredFiles');

在readURL()初始化中需要使用什么参数?

您需要将表示图像的任何
文件
对象传递到
readURL
方法中

因此,首先,将
readURL
函数的最后一行更改为
reader.readAsDataURL(文件)
。另外,为了可读性,将第一个参数从
input
更改为
file

您可以通过
getFile
API方法获取特定精细上传程序文件ID的
File
对象。您可以在
提交的
回调中检索
文件,如下所示:

$(this.fineUploader('getFile',id)

然后,如我所说,在进行建议的修改后,将此调用的结果(一个
文件
)传递到您的
readURL
方法中


请注意,显示预上载预览的本机支持是一个很好的解决方案,但是,正如您所看到的,由于Fine Uploader的API,现在实现这一点并不困难。还请注意,
getFile
API方法在非文件API浏览器(如IE9和更早版本)中不起作用。

您需要将表示图像的任何
文件
对象传递到
readURL
方法中

因此,首先,将
readURL
函数的最后一行更改为
reader.readAsDataURL(文件)
。另外,为了可读性,将第一个参数从
input
更改为
file

您可以通过
getFile
API方法获取特定精细上传程序文件ID的
File
对象。您可以在
提交的
回调中检索
文件,如下所示:

$(this.fineUploader('getFile',id)

然后,如我所说,在进行建议的修改后,将此调用的结果(一个
文件
)传递到您的
readURL
方法中


请注意,显示预上载预览的本机支持是一个很好的解决方案,但是,正如您所看到的,由于Fine Uploader的API,现在实现这一点并不困难。还要注意的是,
getFile
API方法在非文件API浏览器中不起作用,比如IE9和更早版本。

我不能尝试使用fine uploader,但这必须是输入元素对象,看看这个简单的fiddle nope。这在这里不起作用。在你的函数中,这不是输入,你必须获取它并将其传递给函数,看看这里:我不能尝试使用fine uploader,但这必须是输入元素对象,看看这个简单的fiddle nope。这在这里不起作用。在您的函数中,这不是输入,您必须获取它并将其传递给函数,请查看此处:
function readURL(input, previewID) {
    if (input.files && input.files[0]) {
        var reader = new FileReader();

        reader.onload = function (e) {
            $('#pprev'+previewID)
            .css("border","10px solid #FF0000")
            .attr('src', e.target.result);
        };

        reader.readAsDataURL(input.files[0]);
    }
}