Blueimp上传文件名

时间:2016-08-26 10:32:58

标签: jquery file-upload blueimp

我需要恢复上传文件的名称或网址:

<script>
    $('#fileupload').fileupload({

        complete: function (e, data) {
            $.each(data.files, function (index, file) {
              alert(file.name);
            });
        }
        });
</script>

但是我在控制台中发出警报:

  

jquery.js:358 Uncaught TypeError:无法读取属性'length'   未定义

如何解决?

2 个答案:

答案 0 :(得分:2)

请改为尝试:

$('#fileupload').on("fileuploaddone", function (e, data) {
    $.each(data.files, function (index, file) {
        alert(file.name);
    });
});

除了 fileuploaddone &#34; events&#34;可以使用。参见:

https://github.com/blueimp/jQuery-File-Upload/wiki/Options#callback-options

答案 1 :(得分:1)

最有可能的是,您不会从服务器返回文件的名称。答案应为

形式
{ 
  files:
    [
      {
        url: "http://url.to/file/or/page",
        thumbnail_url: "http://url.to/thumnail.jpg ",
        name: "thumb2.jpg",
        type: "image/jpeg",
        size: 46353,
        delete_url: "http://url.to/delete /file/",
        delete_type: "DELETE"
      }
    ]
}

查看以下网址以查看回复 https://github.com/blueimp/jQuery-File-Upload/wiki/JSON-Response

确保在返回的json中,返回name属性,并返回整个json消息,如上面的格式。

让我知道这是否有帮助