在过去两周内处理Fine Uploader,我从文档中看到有一个"验证" " extraButtons"的选项Fine Uploader的选项。这很棒,因为我可以限制某些按钮只允许某些扩展。
但是,我想知道是否有针对" dragAndDrop.extraDropzones"选项。
我没有在文档中看到它,我试图做一些我认为可能偶然起作用的事情,但最后没有运气。
非常感谢您的帮助。
谢谢!
干杯, 托马斯
更新
只是为了让你看到我到目前为止所做的事情,这里是我目前的代码: http://jsfiddle.net/beamstyle_thomas/fyp5dqwt/5/
我只允许JPG文件进行按钮点击:
extraButtons: [
{
element: $('.file-trigger')[0],
validation: {
allowedExtensions: ["jpg"]
}
},
但我不知道如何限制拖放......这就是我所拥有的:
dragAndDrop: {
extraDropzones: [ $('.file-trigger') ]
},
这里有一些注意事项供您测试: - 尝试单击"测试1",选择一个非jpg文件。它会导致验证错误,因为我只允许" jpg"文件。 - 然后,尝试将非jpg文件(假设您正在使用Chrome)拖入"测试1"。它实际上会通过,因为目前没有验证。
谢谢!
答案 0 :(得分:0)
快速查看后,问题出在您声明验证的位置。
例如:
extraButtons: [
{
element: $('.file-trigger')[0],
validation: {
allowedExtensions: ["jpg"]
}
},
说“只要点击了额外的按钮,只有点击了额外的按钮,才能验证扩展是否正常。”
不是为每个按钮定义验证,而是在基础级别定义它:
$(document).ready(function () {
$("#fine-uploader").fineUploaderS3({
validation: {
allowedExtensions: ["jpg"]
},
...
});
});
答案 1 :(得分:0)
虽然其他建议很有价值,但RayNicholus的答案是正确的。这是一个评论,所以我在这里发布这个答案。
您可以检查onSubmit处理程序中File对象的qqDropTarget,如果该文件对该特定放置区无效,则拒绝(返回false)。