-2

我从一个网站获得了一些代码来使用 Fine Uploder,但我在让它工作时遇到了一些问题。

我在控制台中收到以下错误

Uncaught TypeError: Object [object Object] has no method 'on' 

我使用的代码如下:

    // Instantiate a Fine Uploader instance:
    $("#manual-fine-uploader").fineUploader({
        autoUpload: false,
        request: {
            endpoint: "/uploads_bucket"
        }
    }).on("complete", function (event, id, name, response) {
        submitForm.call(this);
    }).on('statusChange', function (event, id, oldStatus, newStatus) {
        if (newStatus === qq.status.CANCELLED) {
            submitForm.call(this);
        } 
    });

任何帮助将不胜感激。

干杯,

4

1 回答 1

1

您确实应该使用最新版本的 jQuery。1.6.4 已经很老了。如果您坚持使用 1.7 之前的版本,请bind使用on. 有人建议使用live,坦率地说,这在这里没有任何意义。不要使用live. 同样,在您的代码中on替换为。bind最好的解决方案是简单地使用当前版本的 jQuery。

为什么不应该使用live?好吧,Fine UploadertriggerHandler在内部使用来触发事件。触发的事件triggerHandler不会冒泡,因此,如果您使用,则永远不会触发您的处理程序,live因为liveALWAYS 将您的处理程序绑定到document.

于 2013-07-04T15:37:10.710 回答