jQuery-File-Upload内容类型/扩展validation
我正在使用带有rails 3的jQuery-File-Upload,它运行得很好。 但我没有找到任何关于如何在客户端validation上传文件的扩展名或内容类型的内容。
有没有办法做到这一点?
因为我无论如何都会通过Paperclip在server-sidvalidation它,但我认为在客户端进行一次validation会更好。
acceptFileTypes
允许的文件类型的正则表达式与文件类型或文件名匹配,因为只有支持File API的浏览器才会报告文件类型。
Type: Regular Expression Example: /(\.|\/)(gif|jpe?g|png)$/i
请参阅https://github.com/blueimp/jQuery-File-Upload/wiki/Options
这个问题暗示你(与大多数人相反)意识到,当你只检测扩展时,你就不会检查mime类型。
在HTML5中,您可以使用accept属性:
您可以使用多个(commaseperated?)值。 但规范说空间分离,但实际上我只看到逗号分隔的值。 介意:在支持HTML5的浏览器中添加更多validation是多余的。
但是如果您的问题与其他用途有关(例如拖放文件上传),那么您可以使用javascript而不是jquery:
if(!(file.type.indexOf('video/') == 0)) { alert('nope'); return false; }
不用说,你也应该在服务器端进行validation。