阻止在Jquery-File-Upload中提交

时间:2014-04-30 07:20:58

标签: jquery validation twitter-bootstrap jquery-file-upload

我在我的页面中使用Jquery文件上传(http://blueimp.github.io/jQuery-File-Upload/)和Bootstrap验证器(https://github.com/nghuuphuoc/bootstrapvalidator),如果表单有效,我只需要在服务器上传文件,因此我覆盖了Jquery-File-Upload的默认提交功能如下

    $(document).ready(function() {
                $('.fileupload').fileupload({
                    url: '/upload',
                    autoupload: false,
                    dropZone: $(".fileuploadzone"),
                    submit: function (e) {
                        $(document).bootstrapValidator('validate');
                        if ($(document).data('bootstrapValidator').isValid()) {
                            return true;
                        }
                        else {
                            return false;
                        }
                    }

                });
                $('.fileupload').bind('fileuploadfinished', function (e, data) {

                   submitForm();

                });
   });

它适用于第一次点击提交按钮('有效'或'无效'),但即使表单有效,也不会在之后工作。 我的意思是既不执行验证也不执行文件上载过程。 请帮助!

2 个答案:

答案 0 :(得分:0)

我认为您只需在每个表单提交后重置bootstrap验证器。

$('.fileupload').bootstrapValidator('resetForm', true);

答案 1 :(得分:0)

我和你有同样的问题,

**如果提交事件回调返回false,则上传请求将不会启动。 (enter link description here

这是我的解决方案。 当提交回调返回false时,启动按钮被禁用,我尝试删除提交回调中的“禁用”属性,它对我来说很好。

submit: function(){
//---invalid--
$('button.start').removeAttr('disabled');
return false;
}
祝你好运。