Javascript jQuery文件上载插件未调用成功回调

Javascript jQuery文件上载插件未调用成功回调,javascript,jquery,jquery-file-upload,Javascript,Jquery,Jquery File Upload,我正在使用jQuery文件上传插件,我想在文件上传完成后做一些自定义jQuery的事情 从这里 现在它这样说 Callback for successful upload requests. $('#fileupload') .bind('fileuploaddone', function (e, data) {/* ... */}) 现在我已经在自己的js文件中定义了这个自定义函数进行测试 $('#fileupload').bind('fileuploaddone', func

我正在使用jQuery文件上传插件,我想在文件上传完成后做一些自定义jQuery的事情

从这里

现在它这样说

Callback for successful upload requests.
$('#fileupload')
       .bind('fileuploaddone', function (e, data) {/* ... */})
现在我已经在自己的js文件中定义了这个自定义函数进行测试

$('#fileupload').bind('fileuploaddone', function (e, data) {/* ... */
alert('Hello');
})
但它不起作用

但是如果我在这里编辑主文件

  // Callback for successful uploads:
            done: function (e, data) {

然后它就工作了。

查看库代码,似乎所有事件都被重命名,删除了“fileupload”。。。所以“fileuploaddone”变成了“done”。它对所有其他回调都有效。 请看本节:

    // Other callbacks:
    // Callback for the submit event of each file upload:
    // submit: function (e, data) {}, // .bind('fileuploadsubmit', func);
    // Callback for the start of each file upload request:
    // send: function (e, data) {}, // .bind('fileuploadsend', func);
    // Callback for successful uploads:
    // done: function (e, data) {}, // .bind('fileuploaddone', func);
    // Callback for failed (abort or error) uploads:
    // fail: function (e, data) {}, // .bind('fileuploadfail', func);
    // Callback for completed (success, abort or error) requests:
    // always: function (e, data) {}, // .bind('fileuploadalways', func);
    // Callback for upload progress events:
    // progress: function (e, data) {}, // .bind('fileuploadprogress', func);
    // Callback for global upload progress events:
    // progressall: function (e, data) {}, // .bind('fileuploadprogressall', func);
    // Callback for uploads start, equivalent to the global ajaxStart event:
    // start: function (e) {}, // .bind('fileuploadstart', func);
    // Callback for uploads stop, equivalent to the global ajaxStop event:
    // stop: function (e) {}, // .bind('fileuploadstop', func);
    // Callback for change events of the fileInput(s):
    // change: function (e, data) {}, // .bind('fileuploadchange', func);
    // Callback for paste events to the pasteZone(s):
    // paste: function (e, data) {}, // .bind('fileuploadpaste', func);
    // Callback for drop events of the dropZone(s):
    // drop: function (e, data) {}, // .bind('fileuploaddrop', func);
    // Callback for dragover events of the dropZone(s):
    // dragover: function (e) {}, // .bind('fileuploaddragover', func);
如果您对正在发生的事情有一些疑问,请查看其中的代码。此库未压缩,因此易于查看。比如说

// start: function (e) {}, // .bind('fileuploadstart', func);

start
实现了回调
fileuploadstart
不可用。

检查服务器端上传脚本是否返回JSON回复-在我的例子中,当回复为空时,它不起作用,但文件已成功上传

下面是我使用jQuery 1.9.1和最新版本的“jQuery文件上传插件”-5.21.3的情况


fileupload元素是否也有id“fileupload”?我还注意到,如果服务器没有返回JSON,则不会触发done:回调。
$("#fileupload").bind("fileuploaddone", function (e, data) {
    console.log("fileuploaddone event fired");
});