我有一个简单的图片上传程序,用户需要上传大图片。我正在使用Blueimp文件上传程序上传图片。我还为用户提供了一些输入字段来填充图片的元数据(即标题,作者等)。
想法是用户在填写表单并上传图片后按下单独的提交按钮。但是,如果用户在上传图片之前按下按钮,则会导致错误。我想禁用表单提交按钮,直到上传图片并完成进度条。
$('#submit_main').attr('disabled', 'disabled');
应该是初始阶段,然后使用类似
的方式启用它$('#submit_main').removeAttr('disabled');
如何在上传所有文件后进行回调。
答案 0 :(得分:5)
$('#submit_main').attr('disabled', 'disabled');
$('#fileupload').bind('fileuploaddone', function (e, data) {
$('#submit_main').removeAttr('disabled');
});
答案 1 :(得分:4)
实际上,每次上传文件时都会触发fileuploaddone事件。因此,如果您选择多个文件进行上传,则在第一个文件完成而不是最后一个文件完成后,您将提前启用提交。 更好的方法是使用fileuploadprogressall事件。
$('#myform').fileupload()
.bind('fileuploadstart', function(){
// disable submit
})
.bind('fileuploadprogressall', function (e, data) {
if (data.loaded == data.total){
// all files have finished uploading, re-enable submit
}
})