Отключение автоматической загрузки в Blueimp jQuery File Upload

Я использую плагин blueint jquery.fileupload для загрузки файлов с помощью asp.net

У меня есть ситуация, когда у меня есть страница, позволяющая пользователю выбрать категорию (выпадающий список ), заголовок (для загруженного файла — TextBox) и ввод файла (обрабатывается плагином).

Плагин: https://github.com/ieb/jQueryFileUpload.Net

javascript/jquery:

 $('#fileup').fileupload({
                    replaceFileInput: false,
                    formData: function (form) {
                        return [{ name: 'dcat', value: $('#ddlCats').val() }, { name: 'title', value: $('#txtTitle').val()}];
                    },
                    dataType: 'json',
                    url: '/_handlers/FileHandler.ashx',
                    add: function (e, data) {
                        var valid = true;
                        var re = /^.+\.((doc)|(xls)|(xlsx)|(docx)|(pdf)|(pts))$/i;
                        $.each(data.files, function (index, file) {
                            if (!re.test(file.name)) {
                                $('#uploaded').html('This file type is not supported');
                                valid = false;
                            }
                        });
                        if (valid)
                            data.submit();
                    },
                    done: function (e, data) {
                        $.each(data.result, function (index, file) {
                            $('#uploaded').html(file);
                        });
                        GetFiles($('#ddlCats').val())
                    },
                    error: function () {
                        alert('An error occured while uploading the document.');
                    }
                });

html:

Yeni Belge:
Category:
Document Description:
Select Document:

Моя проблема в том, что файл загружается (через обработчик http) сразу после того, как я выбираю файл. Я могу справиться с этим, чтобы отправить другие данные формы вместе с ним, однако я хочу запустить это событие на кнопке отправки, так как мне нужно выполнить некоторую проверку. Кроме того, пользователь может захотеть сначала выбрать файл, а затем заполнить другие части формы, что в данном случае он не может сделать из-за того, что форма отправляется до того, как он сможет это сделать.

Поскольку я не очень хороший программист javascript, я понятия не имею, доступна ли уже эта функциональность (вероятно, есть) в файлах .js, доступных с подключаемым модулем. Есть идеи, что мне нужно изменить или сделать?

12
задан Yarin 17 July 2013 в 16:52
поделиться