2014-09-25 160 views
0

我已经具有以下输入elemet页:BlueImp文件上传插件不工作

<input class="uploadDocument" type="file" name="FileData" id="my-upl" />

然后开始上传以下的javascript:

$("#my-upl").fileupload({ 
 
    url: uploadUrl, 
 
    dataType: 'string', 
 
    done: successFunction, 
 
    uploadProgress: function(e, data) { 
 
    var pct = parseInt(data.loaded/data.total * 100, 10); 
 
    updateProgressBar(progressDiv, progressBar, progressLabel, Math.round(pct)); 
 
    }, 
 
    fail: function(e, data) { 
 
    var errorHtml = uploadFailedHtml + "<p>" + data.textStatus + "</p>"; 
 
    showModal(uploadFailedTitle, errorHtml); 
 
    } 
 
});

似乎文件上传不会触发。我甚至试着指定一个“开始”和一个“总是”的回调,看看是否有任何东西被触发但无济于事。

编辑:我已经添加了一个“添加”回调,并且当文件被选中但是上传没有启动时会触发。

回答

1

答案通过查看哪些代码发现在运行时using a button to start the upload

在我添加的回调,我只是不得不做data.submit()

$("#my-upl").fileupload({ 
 
    url: uploadUrl, 
 
    dataType: 'string', 
 
    done: successFunction, 
 
    uploadProgress: function(e, data) { 
 
    var pct = parseInt(data.loaded/data.total * 100, 10); 
 
    updateProgressBar(progressDiv, progressBar, progressLabel, Math.round(pct)); 
 
    }, 
 
    fail: function(e, data) { 
 
    var errorHtml = uploadFailedHtml + "<p>" + data.textStatus + "</p>"; 
 
    showModal(uploadFailedTitle, errorHtml); 
 
    }, 
 
    add: function(e, data) { 
 
    data.submit(); 
 
    return true; 
 
    } 
 
});