Jquery 文件上传在加载时调用上传处理程序

Jquery File Upload invoking upload handler on load

我正在使用 jQuery 文件上传 (https://github.com/blueimp/jQuery-File-Upload)。我在服务器端上传处理程序中使用 Terascript,它似乎工作正常。

但不幸的是 jQuery 文件上传似乎想要在加载时调用上传处理程序,在您告诉它您要上传哪些文件并手动触发上传之前。上传处理程序创建一个随机名称,但当然没有与之关联的实际文件。

http://dev.over60travel.com/sandbox/jquery-file-uploads/index.html

之后似乎一切正常。但是为什么它会在加载时触发上传?

感谢 jQuery-File-Upload 的作者 Sebastian Tschan 对这个问题的回答。

加载时,应用程序确实会调用上传模块。我仍然不完全确定为什么,但是停止它的方法是注释掉 'main.js'.

中的以下行
        // Load existing files:
//    $('#fileupload').addClass('fileupload-processing');
//    $.ajax({
        // Uncomment the following to send cross-domain cookies:
        //xhrFields: {withCredentials: true},
//        url: $('#fileupload').fileupload('option', 'url'),
//        dataType: 'json',
//        context: $('#fileupload')[0]
//    }).always(function () {
//        $(this).removeClass('fileupload-processing');
//    }).done(function (result) {
//        $(this).fileupload('option', 'done')
//            .call(this, $.Event('done'), {result: result});
//    });

周五晚上才恍然大悟,这其实是一个文件管理(而不是上传)的界面。在加载时,您正在请求现有文件的列表,这就是导致我出现问题的过程。抱歉有点慢。 ;)

我已经更改了我的上传处理程序,这样如果在没有文件参数的情况下调用它,它什么也不会返回。那是我最初的治疗方法。然后塞巴斯蒂安建议删除请求它加载的代码,这是一个更好的解决方案。现在我明白了为什么它被称为 onload 我想我会尝试让它按最初的预期工作。

我取消了代码的注释并更改了我的上传处理程序,这样如果没有文件参数被发送,它 returns JSON 以文档中指定的格式发送。太棒了!