以编程方式上传文件

Ran*_*lue 11 javascript jquery jquery-file-upload

我正在使用jQuery文件上传插件,它有一个API以编程方式上传文件.文档写道:

$('#fileupload').fileupload('add', {files: filesList});
Run Code Online (Sandbox Code Playgroud)

问题是我不知道filesList应该是什么.我尝试了下面的失败:

$('#fileupload').fileupload('add', {files: ['/Users/bob/Desktop/test.png']});
Run Code Online (Sandbox Code Playgroud)

应该filesList是什么?

小智 9

荒谬的例子:)有效!

<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<div id="fileupload"></div>
<input class="zz" type="file" name="files[]"  multiple><br />
<input class="zz" type="file" name="files[]"  multiple><br />
<input class="zz" type="file" name="files[]"  multiple><br />
<input class="zz" type="file" name="files[]"  multiple><br /><br /><br /><br />
<input id="envoi_fax" type="submit" class="btn btn-primary start"> <i class="icon-upload icon-white"></i><span>Start upload</span>

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js"></script>
<script src="js/vendor/jquery.ui.widget.js"></script>
<script src="js/jquery.iframe-transport.js"></script>
<script src="js/jquery.fileupload.js"></script>
<script src="js/jquery.fileupload-fp.js"></script>
<script src="js/jquery.fileupload-ui.js"></script>
<script> 
$('document').ready(function () {
    var mycars = new Array();

    $('#fileupload').fileupload({
        url:'server/php/',
        dataType: 'json',
        singleFileUploads: false,
        done: function (e, data) {
            $.each(data.result, function (index, file) {
                $('<p/>').text(file.name).appendTo(document.body);
            });
        }
    });

    $('.zz').bind('change', function (e) {
        var f;
        f = e.target.files || [{name: this.value}];
        mycars.push(f[0]);
    });

    $("#envoi_fax").click(function () {
        $('#fileupload').fileupload('send', {files: mycars});
    });
});
</script>
</body> 
</html>
Run Code Online (Sandbox Code Playgroud)

  • 一些解释会很好 (4认同)

Sam*_*lgh 5

引用文档:

第二个参数必须是具有File或Blob对象的数组(或类数组列表)作为files属性的对象.

您可以使用文件类型输入的文件属性或HTML5文件API来获取文件对象.

有关使用FileAPI和文件输入的更多详细信息,请参阅: MDC - 使用来自Web应用程序的文件

  • 我应该指出,由于安全隐患,在没有用户选择的情况下从客户端获取文件是不可能实现的. (2认同)