JQuery BlueMP файл загрузки получить ответ на переменную - PullRequest
0 голосов
/ 17 декабря 2018

Я пытаюсь добавить общую функцию для загрузки файла jquery blueimp в файл js, чтобы я мог использовать одну и ту же функцию для нескольких входов загрузки файлов.Я вызываю функцию как:

var fileoutput = attachfile(fileobject, ['xlsx','zip'],"tmp");

Это вызовет функцию:

function attachfile(fileobject, allowedfiletypesarray, destinationfolderpath) {
    var allowedFileTypes; 
    allowedFileTypes = allowedfiletypesarray.join('|');
    allowedFileTypes = "/\.("+allowedFileTypes+")$/i";

    $(fileobject).fileupload({
        add: function(e, data) {        
            if(data.originalFiles[0]['type'].length && !allowedFileTypes.test(data.originalFiles[0]['type'])) { 
                $('#fileerror').html('Not an accepted file type'); // show error message
                return false;
            } 
            data.submit();
        },
        url: "uploadcsv.php", 
        dataType: 'text',
        acceptFileTypes : allowedFileTypes,
        formData: {"upload_url":destinationfolderpath},
        done: function (e, data) {
            var fileuploadresult = data.result;
            fileuploadresult = JSON.parse(fileuploadresult); 
            console.log(fileuploadresult);
            return fileuploadresult;
        },
    }).prop('disabled', !$.support.fileInput)
        .parent().addClass($.support.fileInput ? undefined : 'disabled');   
}

Теперь проблема в том,

var fileoutput = attachfile(fileobject, ['xlsx','zip'],"tmp");
console.log(fileoutput);

Это возвращается undefined.И я не получаю возврат от attachfile().console.log(fileuploadresult); внутри attachfile() правильно печатает данные загруженного файла.

Может кто-нибудь помочь мне решить эту проблему.Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...