在fineuploader中没有名称或大小的文件

时间:2013-09-17 16:06:26

标签: android fine-uploader

我在移动网站中使用fineuploader。

除了在2.3 (Gingerbread)之外,一切正常。

如果打开输入对话框并在不选择文件的情况下关闭它,则会创建一个没有名称或大小的文件。我不能使用minFileSize验证检查,因为Gingerbread(2.3)不支持。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

Android 2.3.x会在文件输入元素上触发更改事件,即使在不选择文件的情况下关闭文件对话框也是如此。在这种情况下,input元素的值是空字符串。我们应该通过忽略与包含文件输入值的空字符串的非File API浏览器相关的所有更改事件来解决此问题。

解决方法

解决方法很简单,但有点笨拙。一旦修补Fine Uploader在内部解决此问题,就不再需要这样做了。在那之前...

投放validate event handler

$("#uploader").fineUploader().on("validate", function(event, fileOrBlobData) {
    return fileOrBlobData.name.length > 0 && fileOrBlobData.name !== "qqfile";
});

或者对于非jQuery设置......

callbacks: {
    onValidate: function(fileOrBlobData) {
        return fileOrBlobData.name.length > 0 && fileOrBlobData.name !== "qqfile";
    }
}

以上代码将拒绝任何空名称的文件。有关此问题的更多详细信息,请参阅Fine Uploader issue #998,并关注修补程序的进度,该修补程序可能是3.9.1的一部分。