BlueImp文件上载未在函数中触发

时间:2015-02-10 17:33:19

标签: jquery file-upload blueimp

我尝试按如下方式触发BlueImp文件上传:

function upload(fileinput){
console.log('in upload');

fileinput = $(fileinput);
console.log(fileinput);

fileinput.fileupload({
    dataType: 'json',
    done: function (e, data) {

    },
    always: function(e, data){
        if(data.jqXHR.responseText == 'fixedImage'){
            showLoader('ad', 'table');
            updateAdTable('ad', 'table');
        }
        else{
            theBackend.prepend(data.jqXHR.responseText);
            $('#cropForm').modal('show');
            cropper();
        }
    },
    progressall: function(e, data){
        var progress = parseInt(data.loaded / data.total * 100, 10);
        console.log(progress);
    }
});

}

theBackend.on('change', '[id^="nav_table_ad_id_"]', function(){
    upload($(this));

});

正如我的标题所说,我试图通过调用函数来触发插件,以便我可以重用此功能。但由于某种原因,它并没有解雇插件。可以请别人帮我或解释一下我做错了什么?

亲切的问候,

皮姆

2 个答案:

答案 0 :(得分:0)

改变实际上是否有效?你需要在更改时初始化fileupload插件吗?你能在页面加载时调用输入观察者吗?

答案 1 :(得分:0)

我找到了解决办法:) 正如我所说的,使用函数触发插件的想法使我可以在几个不同的场合重用插件。当我阅读文档时,插件在某个元素的id属性上初始化。我在某种程度上解释了你触发例如onclick的方式,如$(' .selector')。点击(...)

它在某种程度上相同,但我认为它应该/只能触发更改。但是调用函数例如文档就可以了。在我需要的地方/可能需要再次使用该功能。

所以问题不在于如何以及在何时/何地调用该函数并触发fileupload插件