我正在使用 Fine Uploader 进行多个文件上传,效果非常好。现在我在提交事件中运行了一些 MD5 检查,因此我可以确定文件是否已上传,但我不知道如何从上传查询或 storedFiles
中删除此文件。在手动触发上传之前。
这是我的代码:
<script type="text/javascript">
$("#uploader").fineUploader({
request: {
endpoint: 'home/upload'
},
multiple: true,
autoUpload: false,
editFilename: {
enable: true
}
}).on({
"complete": function (event, id, fileName, responseJSON) {
if (responseJSON.success) {
alert("upload success");
}
},
"submit": function (event,id, fileName) {
var f=$(this).fineUploader('getFile',id);
var xxxx = CheckMD5(f, id);
if (xxxx==false) { //i want ignore the file if checkMD5 return false
$(this).fineUploader.cancle(id) //this is not working
}
},
"error": function (event, id, fileName, reason) {
//alert(reason);
}
});
$("#uploadButton").click(function () {
$('#uploader').fineUploader('uploadStoredFiles');
});
function CheckMD5(f,id) { //i'm using spark-md5.js get to get md5 value and compare in server side
return false; //this is for test
}
</script>
最佳答案
要删除文件(在开始或完成上传之前),只需通过cancel
API method取消它即可。 .
例如:
callbacks: {
onSubmit: function(id) {
if (fileIsInvalid) {
this.cancel(id);
}
}
}
在我看来,更好的方法是测试 onValidate
callback 中的文件。 ,并简单地返回 false (或返回一个 promise 并在异步验证操作完成时拒绝/解决它)以省略该文件。
关于javascript - 我如何在上传之前从fineuploader中删除一些文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23766205/