我在移动网站中使用fineuploader。
除了在2.3 (Gingerbread)
之外,一切正常。
如果打开输入对话框并在不选择文件的情况下关闭它,则会创建一个没有名称或大小的文件。我不能使用minFileSize验证检查,因为Gingerbread(2.3)不支持。
任何帮助都将不胜感激。
答案 0 :(得分:0)
Android 2.3.x会在文件输入元素上触发更改事件,即使在不选择文件的情况下关闭文件对话框也是如此。在这种情况下,input元素的值是空字符串。我们应该通过忽略与包含文件输入值的空字符串的非File API浏览器相关的所有更改事件来解决此问题。
解决方法很简单,但有点笨拙。一旦修补Fine Uploader在内部解决此问题,就不再需要这样做了。在那之前...
$("#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的一部分。