我让用户选择文件,然后尝试使用jquery fileupload脚本点击上传按钮后以编程方式上传文件
HTML看起来像这样:
<input name="my_image[]" id="my_file" type="file" multiple="multiple">
jquery调用如下所示:
$('#start-upload').click(function(e) {
var filesList = $('#my_file')[0].files;
//var filesList = $('#my_file').prop("files");
var url = 'photos/index.php';
$('#my_file').fileupload('send', {
files: filesList,
url: url,
dataType: 'json',
start: function(e, data) {
console.log("Upload started");
},
done: function (e, data) {
console.log("Upload complete");
}
});
});
这是我得到的错误:
Uncaught Error: cannot call methods on fileupload prior to initialization; attempted to call method 'send'
知道我在做什么吗?
答案 0 :(得分:3)
它没有初始化。确保您首先拥有类似的内容:
$(document).ready(function(){
$('#my_file').fileupload({ url: 'your_url' ...} );
});
干杯
答案 1 :(得分:0)
为了扩展Edgar的答案,这是我设置以编程方式提交的方式:
//Initialize
$('#file').fileupload({
url: 'someUrl'
});
//Trigger the submit
$('#file').fileupload({
fileInput: $('#file')
});