fine uploader uploadStoredFiles method

fine uploader uploadStoredFiles method

本文关键字:method uploadStoredFiles uploader fine      更新时间:2023-09-26

在尝试调用uploadStoredFiles()方法时,我在使用Fine Uploader for AWS S3时遇到了一个问题。一切都很好,没有错误,直到我调用这个方法,然后我得到一个js错误:

"Method uploadStoredFiles() does not exist on jQuery.fineUploader" 

我尝试使用".fineUploader"answers".fineUploaderS3",结果相同。

<div class="btn btn-primary btn-block" id="sccfile">Add SCC File</div>
<div class="btn btn-primary btn-block" id="scriptfile">Add Script File</div>
<div class="btn btn-primary btn-block" id="notesfile">Add Notes File</div>
<div id='fineUploader'>
    <div id="submitUploads" class="btn btn-block btn-primary">Submit</div>
</div>

<script> 
    $(document).ready(function () {
        $('#fineUploader').fineUploaderS3({
        uploaderType: 'basic',
        autoUpload: false,
        extraButtons: [
            { element: $('#mediafile')  },
            { element: $('#sccfile')    },
            { element: $('#scriptfile') },
            { element: $('#notesfile')  }
        ],
        //  the remaining unrelated options omitted for brevity
    })})
    $('#submitUploads').click(function(){
        $('#fineUploader').fineUploader('uploadStoredFiles()');
</script>

您的代码中有一个错误。Fine Uploader的jQuery插件包装器遵循所有jQuery插件通用的约定。在没有参数的jQuery插件上调用方法时,只需将方法名称作为参数即可。与方法调用关联的所有参数都必须跟在以逗号分隔的参数列表中的方法名称后面。

例如:$('#fineUploader').fineUploader('uploadStoredFiles');

正是出于这个原因(以及更多原因),我建议甚至不要使用jQuery插件包装器。jQuery插件语法怪异且不直观,Fine Uploader的jQuery包装器没有提供任何好处。

例如,如果没有jQuery包装器,您将调用相同的方法,如下所示:uploader.uploadStoredFiles();